301重定向不能通过.htaccess工作

时间:2013-12-13 作者:Ryan Grush

我发现了这个小把戏http://css-tricks.com/snippets/htaccess/301-redirects/ 将旧Wordpress域重定向到包含路径的新域。我对本地副本进行了测试,一切正常。当我登录到旧域的cpanel并尝试它时,虽然它会给我带来一些不好的结果。

这是我用于本地和实时复制的代码。。。

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

Redirect 301 / http://newsite.com/
下面是结果http://www.cuponsmercado.com.br/lojas/. 它看起来是在调用新域(基于左下角的Google Chrome状态),但它只显示了HTML/CSS中断的旧域。有什么想法吗?

2 个回复
SO网友:Manish

Replace Redirect 301 / http://newsite.com/ by RewriteRule ^(.*)$ http://newsite.com/ [L,R=301]

SO网友:s_ha_dum

将重定向向上移动到WordPress部分上方。

在我看来,应该发生的是.php 文件在旧域上正常处理。看到了吗[L]? 如果条件匹配,这将是最后运行的规则。重定向从不应用于这些文件。它确实适用于非php文件——图像、javascript等。如果您使用HttpFox之类的工具查看您的请求,它会证实我刚才给出的描述。

我会用CNAME 如果我是你的话。

结束