У меня есть сайт, который изменил домены. У меня есть 4 конкретных страницы, которые необходимо перенаправить на их новые эквиваленты в новом домене. Кроме этого, я хочу, чтобы весь домен перенаправлялся на новый.htaccess перенаправляет домен, но не отдельные страницы?
Вот мой код:
Options +FollowSymLinks
RewriteEngine on
RewriteBase/
# Redirect individual pages.
RewriteRule http://olddomain.net/subdirectory/subpage1/$ https://www.newdomain.com/newsub/newpage1/ [R=301,L]
RewriteRule http://olddomain.net/subdirectory/subpage2/$ https://www.newdomain.com/newsub/newpage2/ [R=301,L]
RewriteRule http://olddomain.net/subdirectory/subpage3/$ https://www.newdomain.com/newsub/newpage3/ [R=301,L]
RewriteRule http://olddomain.net/subdirectory/subpage4/$ https://www.newdomain.com/newsub/newpage4/ [R=301,L]
RewriteRule (.*) http://www.newdomain.com/ [R=301,L]
Я также попытался написания RewriteRules, как это, но он имеет тот же эффект:
RewriteRule ^/subdirectory/subpage1/$ https://www.newdomain.com/newsub/newpage1/ [R=301,L]
Это только кажется, чтобы выполнить последнюю строку, которая он всегда перенаправляется на http://www.newdomain.com/, независимо от того, какой был введен URL olddomain.net. Как перенаправить отдельные URL-адреса?
РЕШИТЬ: Вот то, что я в конечном итоге с помощью:
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/subdirectory/subpage1/$
RewriteRule ^.*$ https://www.newdomain.com/newsub/subpage1/ [R=301,L]
RewriteCond %{REQUEST_URI} ^/subdirectory/subpage2/$
RewriteRule ^.*$ https://www.newdomain.com/newsub/subpage2/ [R=301,L]
RewriteCond %{REQUEST_URI} ^/subdirectory/subpage3/$
RewriteRule ^.*$ https://www.newdomain.com/newsub/subpage3/ [R=301,L]
RewriteCond %{REQUEST_URI} ^/subdirectory/subpage4/$
RewriteRule ^.*$ https://www.newdomain.com/newsub/subpage4/ [R=301,L]
Redirect 301/http://www.newdomain.com/
Спасибо за ответ! В конце концов я выяснил другое решение до вашего ответа: P – James