Apache RewriteRule - Невозможно удалить "index.php? Q =" - PullRequest
0 голосов
/ 19 августа 2011

Я тестирую файл .htaccess на сервере.Цель состоит в том, чтобы преобразовать www.mysite.com/index.php?q=help в mysite.com/help

1) для удаления www. 2) для удаления index.php?q=

Мой .htaccess в корневом каталоге содержит:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ /index.php?q=$1 [L] 

Ничего не происходит - index.php? Q = помощь все еще там ... Кто-нибудь знает, почему?

Спасибо.

Мэтью, еще раз спасибо.Вот другая версия, проблема решена на 50%.

RewriteEngine On 
RewriteCond %{HTTP_HOST} ^www.mysite.com$ [NC] 
RewriteRule ^(.*)$ http://mysite.com/$1 [L,R=301] #removes www., works fine 
RewriteRule ^index\.php/?$ http://mysite.com/ [NC,R,L] #still doesn't work - it does not remove index.php as needed

1 Ответ

1 голос
/ 19 августа 2011

Исходный запрос все еще будет там из-за RewriteCond% {REQUEST_FILENAME}! -F

...