2013-09-16 3 views
0

У меня есть эти строки в моем файле .htaccess:исключить фавиконки из переписывают в .htaccess

Options +FollowSymLinks -MultiViews 

RewriteEngine On 
RewriteBase/

RewriteRule ^([^/]+)/?$ index.php?page=$1 [L,QSA,NC] 

Эти правила перезаписи работают нормально, но у меня есть значок favicon.ico в корне этого сервер, но я не могу обращаться к ним с помощью этих правил перезаписи.

Как я могу переписать этот файл .htaccess только для перезаписи, если это не запрос файла favicon.ico?

ответ

1

Просто добавьте исключение ваших правил:

Options +FollowSymLinks -MultiViews 

RewriteEngine On 
RewriteBase/
RewriteCond ^([^/]+)/?$ !^favicon\.ico 
RewriteRule ^([^/]+)/?$ index.php?page=$1 [L,QSA,NC] 

этом я хотел бы отметить, что, если нет причин использовать .htaccess конфигурации типа файлов вы должны поместить такие правила перезаписи в основной конфигурации сервера , Это намного быстрее и легче отлаживать.

+0

Спасибо, но я боюсь, что ваши решения не работают. Он по-прежнему перенаправляет мой url (http://www.domain.com/favicon.ico) на http://www.domain.com/page=favicon.ico – gait

+0

Я сделал небольшую модификацию RewriteCond, я думаю, что ведущий косая черта была неправильной. К сожалению, у меня ограниченный опыт в файлах стиля .htaccess. Выполнение такого материала в конфигурации основного сервера всегда предпочтительнее, если нет особых причин. Использование основной конфигурации - ускоритель во время работы и гораздо проще отлаживать и настраивать. – arkascha

+0

Еще не повезло. Я не могу изменить основную конфигурацию системы, поэтому я должен сделать это таким образом. – gait

Смежные вопросы