2012-04-04 4 views
2

На моем сайте я использовал URL-адреса, такие какHtaccess - удалить «index.php» из URL и перенаправлять

http://me.example.com/index.php?p=home 

Тогда я решил использовать

http://me.example.com/?p=home 

Все работало автоматически без любой файл .htaccess. Но адреса, содержащие «index.php», также по-прежнему работают. Некоторые сайты имеют ссылки на мой сайт в «старом» формате. Я хочу, чтобы люди перестали использовать этот «старый» формат и перенаправляли их на «новый» формат URL, когда они используют «старый» формат. Все, что я хочу сделать, это удалить «index.php» из URL-адреса, а также изменить этот URL-адрес в браузере посетителя.

+0

Возможный дубликат: http://stackoverflow.com/questions/9764828/htaccess-redirect-to-remove-index-php – clmarquart

ответ

5

Вот код, который будет идти в .htaccess под DOCUMENT_ROOT:

Options +FollowSymLinks -MultiViews 
# Turn mod_rewrite on 
RewriteEngine On 
RewriteBase/

RewriteRule ^index\.php/?$/[L,R=301,NC] 
+0

Я думал, что это будет одна строка ... но хорошо :) спасибо :) –

+0

как бы сохранить URL-адрес и все еще делать это? например example.com/folder/index.php => example.com/foler/ – BenJamin

+2

вычислено: RewriteRule^(. *)? index \ .php /? $/$ 1 [L, R = 301, NC] – BenJamin