2012-02-17 3 views
0

Имея немного проблемы с ниже:Mod переписан - перенаправить вопрос - локальный сервер отлично, живой сервер не

RewriteEngine On 
RewriteOptions Inherit 
RewriteBase/

#Add trailing slash if not a directory or file, but not if it contains a dot 

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_URI} !/$ 
RewriteCond %{REQUEST_URI} !\. 
RewriteRule .*[^/]$ $0/ [L,R=301] 

# Don't redirect these directories 

RewriteRule ^/?_images/.+$ - [L] 
RewriteRule ^/?_lib/.+$ - [L] 
RewriteRule ^/?_scripts/.+$ - [L] 
RewriteRule ^/?_temp/uploads/.+$ - [L] 
RewriteRule ^/?_template/.+$ - [L] 

# Redirect via router, but not these files 

RewriteCond %{REQUEST_URI} !^(\/!favicon.ico|robots.txt|sitemap.xml).*$ 
RewriteCond %{REQUEST_URI} !^\/$ 
RewriteRule ^(.*)$ index.php?route=$1 [QSA,L] 

Проблема у меня в том, что «не пересылают директории» - в основном файлы в этих папках должны показываться, - это работало правильно, но у меня немного проблемы с отображением чего-либо из каталога /_lib/images/ - по какой-то причине я всегда получаю ошибку 404 (например, потому что она идет через маршрутизатор).

При более внимательном рассмотрении, отображая номер ошибки, на самом деле это, по-видимому, ошибка 406 (к которой я не сталкивался раньше), а 404, вероятно, приводит к отсутствию страницы ошибки 406.

Незначительная вещь, она отлично работает на локальном компьютере на XAMPP, но не на реальном сервере - также, если я переименую _lib/images/, скажем, _lib/a/, он будет работать отлично ... так что вопрос в том, Вот? Даже простое «привет мир» Результаты же ....

+0

Является ли это «.htaccess», если так, '^ /? ...' является провалом. Вы не увидите ведущий '/' - см. Apache doc'n. – TerryE

+0

Также 'RewriteRule. * [^ /] $ ...' => нет конечного слэша, поэтому isn; t '% {REQUEST_URI}!/$' Избыточное условие? – TerryE

+0

Да, это '.htaccess' - я не уверен, где я получил'^/? ... ', но, похоже, он работал, возможно, я могу удалить'? '- я не слишком хорош с' .htaccess', вероятно, поэтому есть избыточные процессы ... – MrJ

ответ

0

406 Не Приемлемый Запрашиваемый ресурс способен только генерировать контент, не согласующиеся с Accept заголовками, отправленных в запросе.

Похоже, что у вас нет ассоциаций для ваших типов файлов изображений, установленных на сервере. Переместите изображение в DOCROOT, а затем попробуйте его отобразить. Если он возвращает 406, вам нужно настроить правильные ассоциации файлов.

+0

Я не совсем уверен в 406 штуке, но 406.html появился, когда я сделал echo $ _GET ['route']; 'on index.php ... но скрипты images/php начинают работать в этой папке, если Я переименовываю его во что-либо, кроме «изображений» по какой-то причине, поэтому я думаю, что это, вероятно, что-то связано с остальной частью файла .htaccess – MrJ