Я хотел бы принудительно использовать другое имя хоста/доменное имя для определенного каталога на моем сайте.
В настоящее время существует каталог, содержащий несколько веб-страниц в mainsite.com/directory. Для страниц, которые находятся только в этом каталоге, я хочу, чтобы доменное имя в адресной строке пользователей изменилось на differentsite.com. В идеале страницы должны находиться на корневом уровне differentsite.com.
Какие правила я могу добавить в файл .htaccess WordPress, чтобы добиться этого?
решение1
Создайте блок из следующих 3 строк для каждого каталога, для которого вы хотите это сделать. Сделайте это после директивы RewriteEngine on
. В этом примере www.example.com — это домен, который вы хотите использовать для каталога.
RewriteCond %{REQUEST_URI} ^/directory1(.*)
RewriteCond %{HTTP_HOST} !^www\.example\.com$
RewriteRule .* http://www.example.com%1 [L,R]
После того, как вы протестируете его, измените [L,R]
на [L,R=301]
, чтобы обозначить постоянное перенаправление для лучшей дружественности к SEO. У меня нет его для начала, потому что это усложняет тестирование, так как заставляет браузеры кэшировать перенаправление.
Чтобы вышеизложенное сработало, вам необходимо убедиться, что сервер настроен на прослушивание другого домена, и при доступе к этому домену использовать полный путь к подпапке (в данном случае directory1) в качестве корневого каталога документов для домена.
Если вы не знаете, как это сделать, и вас не смущает наличие подкаталога в URL-адресе, то настройте другой домен на использование того же корневого каталога документов, что и основной домен, а затем используйте следующие правила:
RewriteCond %{REQUEST_URI} ^/directory1.*
RewriteCond %{HTTP_HOST} !^www\.example\.com$
RewriteRule .* http://www.example.com%{REQUEST_URI} [L,R]