Apache2.2 FallbackResource не работает? - PullRequest
9 голосов
/ 31 декабря 2011

Итак, у меня настроен резервный ресурс в Apache для отправки запросов на index.php в webroot, и он работает, за исключением случаев, когда я вызываю несуществующий файл php в каталоге webroot.Например, если я пытаюсь получить "/a.php", который не существует, я получаю ошибку 404.Но если я вызываю «/nodir/a.php», он отправляет это в файл index.php, как и ожидалось.

Я искал в Google и прочитал документацию по Apache для этой функции, но не выяснил, почемуэто происходит.

Версия моего установочного сервера: Apache / 2.2.20 (Ubuntu) Использование веб-сайта по умолчанию с конфигурацией по умолчанию с "FallbackResource /index.php" в разделе каталога

Есть идеи?

Я могу заставить это работать правильно, используя mod_rewrite со следующими основными строками в .htaccess, но, очевидно, предпочел бы FallbackResource вместо этого:

(.htaccess in webroot)
RewriteEngine On
RewriteCond /var/www/%{REQUEST_FILENAME} !-f
RewriteCond /var/www/%{REQUEST_FILENAME} !-d
RewriteRule (.*) index.php

Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
GET /a.php HTTP/1.1
HOST: localhost
Connection: close

HTTP/1.1 200 OK
Date: Sat, 31 Dec 2011 02:37:48 GMT
Server: Apache/2.2.20 (Ubuntu)
X-Powered-By: PHP/5.3.6-13ubuntu3.3
Vary: Accept-Encoding
Content-Length: 43
Connection: close
Content-Type: text/html

/a.php
localhost

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