Как проверить, существует ли файл в Apache - PullRequest
0 голосов
/ 25 мая 2010

В прошлом я успешно установил это в IIS, но я не уверен, как это сделать в Apache. Я хочу проверить, существует ли файл, будь то:

/path/to/file.php
/path/to/file.cfm
/path/to/file.html
/path/to/

Если файл не существует, я хочу перенаправить в / 404 /, где у меня есть файл, который выполняет всю связанную с 404 обработку.

Наконец, когда я делал это в IIS, он выдавал мне CGI.QUERY_STRING что-то вроде:

404;http://example.com/prettyurl

Может ли Apache сделать то же самое?

Это то, что я пытался до сих пор, но безуспешно. (Я, наверное, далеко отсюда ...)

RewriteEngine on
RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_URI} -f
RewriteRule (.*)$ /404/ [R,L,NC]

Спасибо ..

1 Ответ

1 голос
/ 25 мая 2010

Не используйте слеш document_root ..., просто сделайте REQUEST_FILENAME !-f Восклицательный знак отменяет флаг -f.

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