我已经在我的Wordpress网站的.htaccess中添加了301重定向,但它已经破坏了我的网站。它显示以下错误消息:
.htaccess文件
Options +FollowSymLinks
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !^insurancetailors\.com$ [NC]
RewriteRule ^(.*)$ http://insurancetailors.co.uk[R=301,L]
# 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
答案 0 :(得分:0)
您需要在网址后面加一个空格:
# here -----------------------------------------v
RewriteRule ^(.*)$ http://insurancetailors.co.uk [R=301,L]
如果没有这个空间,apache会假设您希望 302 重定向到URL:http://insurancetailors.co.uk[R=301,L]
,这不是您想要的,并且实际上是抛出500服务器错误。如果没有R=301
标志,apache会假定 302 重定向。
编辑:
总结一下评论:
我想将insurancetailor.com重定向到insurancetailor.co.uk
规则需要如下:
RewriteCond %{HTTP_HOST} ^insurancetailors\.com$ [NC]
RewriteRule ^(.*)$ http://insurancetailors.co.uk/$1 [R=301,L]
答案 1 :(得分:0)
试试这段代码:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !^insurancetailors\.co\.uk$ [NC]
RewriteRule ^(.*)$ http://insurancetailors.co.uk/$1 [R=301,L]
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress