htaccess 301 перенаправление на новую страницу не работает - PullRequest
0 голосов
/ 04 июня 2019

Я сделал 60 301 редирект с моего старого URL на новый URL.Синтаксис, который я сделал на каждой странице, выглядит следующим образом:

Redirect 301 "http://www.olddomain.com/product/foo" "https://newdomain.com/product/bar"

Когда я перехожу на старую страницу "http://www.olddomain.com/product/foo", я перенаправляюсь на новую страницу, но не на указанный мной URL-адрес: "https://newdomain.com/product/bar".Я перенаправлен на "https://newdomain/product/foo".

Так что перенаправление на домен правильное, но подстраницы в URL-адресе старые, а не новые.

У кого-нибудь естьидея, почему это происходит?

1 Ответ

1 голос
/ 05 июня 2019

Вы не можете сопоставить доменное имя в директиве Redirect.

Я предлагаю использовать правило mod_rewrite, которое должно быть помещено перед всеми другими правилами :

RewriteEngine On

RewriteCond %{HTTP_HOST} ^(?:www\.)?olddomain\.com$ [NC]
RewriteRule ^product/foo/?$ https://newdomain.com/product/bar [L,NC,R=301]

Убедитесь, что это самое верхнее правило, и протестируйте его в совершенно новом браузере, чтобы избежать устаревшего кэша.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...