.htaccess Apache на cPanel работает только в некоторых случаях - PullRequest
0 голосов
/ 20 августа 2009

Я использую Zend Framework, поэтому загружаюсь в файл с именем index.php. Естественно, я не хочу, чтобы изображения загружались, поэтому я добавил файл .htaccess. Вот как это выглядит

/application
/library
/public (this is the root of the site)
     /images
     /js
     .htaccess
     index.php

Вот что написано в моем .htaccess:

RewriteEngine on
RewriteRule !\.(js|ico|gif|jpg|png|mp3|mov|css)$ index.php

Это в основном говорит, что если он не заканчивается на .js / .ico / etc, то отправьте запрос на index.php. Он отлично работает на моем локальном хосте, но когда я начинаю подключать его к сети, это не так. Он просто направляет все в index.php, независимо от окончания запроса. Когда mywebsite.com/images/wizard.gif должен просто показать картинку, он пытается загрузить контроллер изображений, а это не то, чего я хочу.

Что может быть не так? Я знаю, что он читает .htaccess. Это неправильно читает мое регулярное выражение? Почему один сервер Apache читает это неправильно, в то время как другой читает правильно? Любая помощь будет великолепна.

1 Ответ

0 голосов
/ 21 августа 2009

Вот мой .htaccess, если вы хотите попробовать:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ /index.php [NC,L]

Обычно он проверяет, является ли запрос не каталогом, символической ссылкой или реальным файлом, а затем отправляет его в index.php В противном случае он предоставит прямой доступ к файлу / каталогу

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...