перенаправление 301 вопроса
-
21-08-2019 - |
Вопрос
Мы только что перешли на редизайн нашего нового веб-сайта.
У нас есть копия предыдущей в папке "v1", а новая находится в папке "v2".Я играю с файлами 2 .htaccess.Файлы организованы таким образом:
root
L .htaccess (1)
L v1
L v2
L .htaccess (2)
.htaccess 1 выполняет 2 действия:
- удалите www из URI
- перенаправляет все запросы на v2/
Правила таковы:
RewriteCond %{HTTP_HOST} ^www\.example\.com$ [NC]
RewriteRule ^(.*)$ http://example.com/$1 [R=301,L]
RewriteCond %{REQUEST_URI} !^/v2/ [NC]
RewriteRule ^(.*)$ /v2/$1 [NC,L]
Теперь у меня есть определенные URL-адреса, которые хорошо проиндексированы.Например:example.com/pixflow/
Я хотел бы 301 перенаправить его на example.com/projects/pixflow1 / (что физически означает example.com/v2/projects/pixflow1 /)
Чтобы добиться этого, я ввел файл .htaccess 1:
RewriteRule ^pixflow/$ http://%{HTTP_HOST}/projects/pixflow1/ [L,R=301]
Но это не работает, он возвращает 404.Что я делаю не так?
Решение
Вы можете просто указать абсолютный URL-путь для замены:
RewriteRule ^pixflow/$ /projects/pixflow1/ [L,R=301]
Но ваш тоже должен сработать.
Другие советы
кажется, включение этого в .htaccess (1) работает:
RewriteRule ^pixflow/$ http://domain.com/projects/pixflow1/ [L,R=301]