Внутренний редирект с субдомена на root через .htaccess - PullRequest
0 голосов
/ 09 июля 2011

Я использую следующий .htaccess-код для преобразования моих URL в удобные для пользователя:

RewriteEngine on
RewriteRule ^(.*)/$ index.php?page=$1

Теперь я хочу перенаправить запросы с www-субдомена на корневой домен, например, если пользователь запрашивает http://www.mydomain.com/stuff/, он видит http://mydomain.com/stuff/ в адресной строке своего браузера.

Все попытки, которые я предпринял, привели к внешним перенаправлениям, поэтому пользователь может увидеть переписанный URL, например, http://mydomain.com/index.php?page=stuff.

Как выполнить внутреннее перенаправление, чтобы адресная строка не изменилась?

1 Ответ

0 голосов
/ 09 июля 2011

Используйте эти правила (поместите их в .htaccess файл в корневой папке):

RewriteEngine On
RewriteBase /

# canonical domain name (no www please)
RewriteCond %{HTTP_HOST} =www.domain.com
RewriteRule ^(.*)$ http://domain.com/$1 [QSA,R=301,L]

# nice url handler
RewriteRule ^(.*)/$ /index.php?page=$1 [QSA,L]

Скорее всего, у вас уже были правильные правила (на основе вашего описания) .. вытолько что они были в неправильном порядке.Вы должны иметь в виду - порядок имеет значение.

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