2015-04-11 3 views
0

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

Я хочу, чтобы пользователь, когда приходит к определенному домену, чтобы быть перенаправлены на другой домен, у меня есть этот код в HTAccess файл, он перенаправляет хорошо, но не для всех URL-адресов, я хочу, чтобы все запросы перенаправлялись в новый домен с одинаковыми URL-адресами.

RewriteCond %{HTTP_HOST} ^olddomain\.com$ [OR] 
RewriteCond %{HTTP_HOST} ^www\.olddomain\.com$ 
RewriteRule (.*)$ http://www.newdomain.com/$1 [R=301,L] 

любая идея, что не так?

+0

Это перенаправление хорошо, но не для всех URL. Вы имеете в виду, что www \ .olddomain \ .com перенаправляется на www \ .newdomain \ .com, но не www \ .olddomain \ .com/foo? – starkeen

+0

да, точно, очень странно –

ответ

0

Проблема заключалась в том, что мой .htaccess-файл также используется со многими доменами, и у меня есть все правила домена в блоке, разделенном комментарием, и каждый домен имеет некоторое перенаправление в папку, если конкретный URL-адрес указан в URL-адресе

RewriteCond %{HTTP_HOST} ^www\.mydomain\.com [NC] 
RewriteRule ^example/(.*)$ folder1/$1 [QSA,L] RewriteRule 
RewriteRule ^fold2/(.*)$ folder2/$1 [QSA,L] 

так что я должен добавить свой код

RewriteCond %{HTTP_HOST} ^olddomain\.com$ [OR] 
RewriteCond %{HTTP_HOST} ^www\.olddomain\.com$ 
RewriteRule (.*)$ http://www.newdomain.com/$1 [R=301,L] 

перед любыми переадресаций, чтобы сделать его запустить, вероятно, и перенаправляет весь URL.

Смежные вопросы