Назад | Перейти на главную страницу

Рендеринг файлов без расширений с помощью php создает ошибку 404 при доступе к индексу каталога

Я пытаюсь отобразить все файлы в каталоге как файлы php. У этих файлов нет расширения. Я делаю это, добавляя следующий файл .htaccess:

SetHandler application/x-httpd-php5
DirectoryIndex index index.php index.html

Проблема в том, что я получаю ошибку 404 при доступе к файлу индекса по URL-адресу. Например http://foo.com/mydir/ приведет к ошибке 404 (в журналах) и сообщению «Не указан входной файл» в браузере.

Если я удалю строку SetHandler, все будет работать правильно для индексного файла, но другие мои страницы не будут отображаться как php.

PHP 5.2.11 Apache 2.2.14 Linux

Есть идеи, что я делаю неправильно?

Указав SetHandler application/x-httpd-php5 по всем запросам вы предотвращаете mod_dir от выполнения своей работы.

Думаю, это сработает:

DirectoryIndex index index.php index.html
<Files *>
  SetHandler application/x-httpd-php5
</Files>

Options -MultiViews