2009-09-30 3 views
2

Я прекрасно знаю, как создать пользовательскую страницу 404 на PHP, однако мне интересно, есть ли способ вернуть контроль над apache и позволить ей создать надлежащую страницу 404, отправив правые заголовки и т. Д., Когда моя логика говорит так?Пусть apache обрабатывает ошибку 404, если сочтет это подходящим PHP?

Я смотрю some apache specific functions, но не может найти что-либо подходящее. Неужели это просто невозможно? Я помню что-то подобное, доступное, например, mod_perl, имея полный доступ к внутренним элементам apache, где этот эквивалент в PHP?

ответ

1

Мои исследования до сих пор привели меня к выводу, что невозможно передать обратно Apache из mod_php, как некоторые другие технологии, например. mod_perl, разрешить.

0

Я не уверен, что вы можете делать то, что вы хотите сделать точно, но одно из ваших требований может быть выполнено php, и хорошо, кроме ... Я действительно не вижу никаких других.

Вы можете отправить правильный тип заголовка, используя функцию header(). В моем коде я обычно использую один ниже.

 
header("HTTP/1.0 404 Not Found"); 
echo "sorry, page not found..."; 

См function.header.php в руководстве PHP для более подробной информации.

+0

Как я уже сказал, я знаю ** это ** решение, спасибо. – mark

+0

Вижу, извините. Возможно, уточните, почему вы хотите, чтобы apache делал это, а не используя примеры вещей, которые вы уже можете сделать из php, может помочь? PHP может создать надлежащую страницу 404, поэтому в вашем запросе есть путаница. Хотел бы я помочь больше, но я не знаю, как вернуть логику обратно в apache, не делая ничего глупого, как заголовок, запрашивающий URL-адрес, который не обрабатывается php. – catfarm

+0

Я хотел воспользоваться механизмом Apaches, который генерирует дополнительные заголовки для 404 страниц, которые мне придется добавить вручную, чего я не люблю. Кажется, PHP просто не поддерживает такого рода вещи. – mark

Смежные вопросы