%{REQUEST_URI} не работает с index.php
У меня есть сайт, который использует следующий формат ссылок:
http://www.website.com/section1/index.php
http://www.website.com/section2/index.php
http://www.website.com/section3/index.php
http://www.website.com/section1/section4/index.php
Я пытался избавиться от последней части "index.php", используя следующие директивы.htaccess:
RewriteEngine on
RewriteCond %{REQUEST_URI} ^/index\.php$
RewriteRule (.*) http://www.google.com [R=301,NC,L]
Конечно, www.google.com предназначен только для тестирования, однако приведенный ниже пример не работает. Что с этим не так? Вторая часть вопроса - чем заменить www.google.com, если я хочу переписать на http://www.website.com/section1?
Спасибо!
1 ответ
Решение
Это не работает, потому что ваше регулярное выражение неверно. RewriteCond %{REQUEST_URI} ^/index\.php$
ожидает %{REQUEST_URI}
быть /index.php
но у тебя есть /section1/index.php
,
Правильная версия будет:
RewriteEngine on
RewriteCond %{REQUEST_URI} /index\.php$
RewriteRule (.*) http://www.google.com [R=301,NC,L]
Или даже:
RewriteEngine on
RewriteRule /index\.php$ http://www.google.com [R=301,NC,L]