2017-01-11 2 views
0

мне нужно следующее:RewriteRule для корневой страницы

(1) mysite.com должны не перенаправлены.

(2) mysite.com/index.html должен не быть перенаправлен.

Но остальные страницы на этом домене должны быть перенаправлены:

(3) mysite.com/xxx должны быть перенаправлены на new.mysite.com/xxx

Следующая .htaccess работает отлично для (2) и (3):

RewriteEngine On 
RewriteRule ^index\.html$ - [L] 
RewriteRule ^(.*)$ http://new.mysite.com/$1 [R=301,L] 

Но как я могу реализовать точку (1)?

+0

Скорее всего у вас есть 'DirectoryIndex' установлены в вашем HTTP конфигурации сервера хостов. Это означает, что фактический запрос, который вы делаете _not_ хотите перенаправить, это 'https: // example.com /', но вы указали только исключение для 'https: // example.com/index.html'. Вы хотите добавить другое исключение. – arkascha

+1

Вам нужно включить 'RewriteCond', чтобы исключить' mysite.com'. – Lag

ответ

1

Чтобы исключить свой корень, просто поставить следующее условие выше правила

RewriteCond %{REQUEST_URI} !^/$ 
Смежные вопросы