302 Обнаружено сообщение об ошибке
Я добавил 301 редирект на.htaccess моего сайта Wordpress, но он сломал мой сайт. Это показывает следующее сообщение об ошибке:
файл.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
2 ответа
Решение
Вам нужен пробел после URL:
# 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]
Попробуйте этот код:
# 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