Как сделать редирект с index.php на морду?

TO
На сайте с 21.09.2007
Offline
170
1253

Не могу разобраться в следующей ситуации:

Есть сайт на голом php, ЧПУ сделаны через index.php - все с помощью htaccess редиректится на него, а там скрипты определяют уже, что куда.

Так вот, главная доступна как по адресу www.site.ru, так и по адресу www.site.ru/index.php.

Как склеить index.php c /?

В скриптах я бы сделал этот редирект легко, но там до скриптов дело не доходит, так как в htaccess проверяется, есть ли физически файл, если нет - то скрипты запускаются. В данном случае файл есть. :)

Вот что в htaccess, если нужно:

#DirectoryIndex index.php
RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*)$ index.php?route=$1 [L,QSA]

AddDefaultCharset utf-8
php_flag magic_quotes_gpc off

php_flag display_errors on

php_flag session.use_trans_sid off
php_flag session.use_cookies on
iren K
На сайте с 28.12.2008
Offline
222
#1
t_o_x_a:

Как склеить index.php c /?

RewriteCond %{REQUEST_URI} ^([^.]+)/$

RewriteRule ^[^.]+/$ /%1 [QSA,L]

как др. вариант:

RewriteEngine on

RewriteBase /
RewriteCond %{REQUEST_URI} ^/index\.html$
RewriteRule ^(.*)$ http://site.ru/ [R=301,L]
c уважением Iren

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий