Настройка редиректа с главной+index.php+параметры на главную

J
На сайте с 18.02.2008
Offline
122
469

Здравствуйте, подскажите пожалуйста как и возможно ли настроить следующий редирект:

с урлов вида

/index.php

/index.php?newp=w

/index.php?categoryID=8273&st=new

в общем случае site.ru/index.php[любой_набор_символов]

на урл вида site.ru (без параметров и индексных файлов)

на данный момент настройки следующие:

<IfModule mod_rewrite.c>

Options +FollowSymLinks
RewriteEngine On

# to /

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !\..{1,10}$
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*)$ http://www.site.ru/$1/ [L,R=301]

# from index.php to /

RewriteRule ^(.*)index\.php$ http://www.site.ru/$1 [R=301,L]

# from index.html to /

RewriteRule ^(.*)index\.html$ http://www.site.ru/$1 [R=301,L]


RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !/bitrix/urlrewrite.php$
RewriteRule ^(.*)$ /bitrix/urlrewrite.php [L]
RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization}]
</IfModule>

т.е. пока редирект работает с site.ru/index.php?бла_бла_бла=123 на site.ru/?бла_бла_бла=123

Gerga
На сайте с 02.08.2015
Offline
94
#1

Jaivan, если нужно значение бла_бла_бла=123, то нельзя. Если же нужно удалить и забыть о get параметре на index.php, то так:


<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.php?(.*)$ http://site.ru/$1? [R=301,L]
</IfModule>

Это "site.ru/index.php?бла_бла_бла=123" будет перенаправлять на "site.ru".

J
На сайте с 18.02.2008
Offline
122
#2

ок, спасибо! то, что нужно! а я ? экранировал )

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