Как я могу использовать Apache для дальнейшей обработки состояния ошибки, установленного в скрипте PHP? - PullRequest
1 голос
/ 07 июля 2010

Моя среда: виртуальный хостинг с PHP 5.2, установленный как apache2handler

У меня настроены ErrorDocuments:

ErrorDocument 404 "Simply Not Found"
# OR
ErrorDocument 404 /errors/fancy-not-found.php
# both variants works as expected

Однако самый простой пример из PHP manual не хочет сотрудничать с Apache2 и выполнять совместимую обработку ошибок:

<?php
header("HTTP/1.0 404 Not Found");
die(); /* results in empty page */
/* OR */
die('Failed');  /* reports failure */
?>

Как изменить этот код, чтобы вызвать указанную ошибку и заставить Apache ее устранить?

1 Ответ

0 голосов
/ 08 апреля 2011

PHP не работает, и этот вопрос оказался без ответа


В настоящее время мои выводы:

  • видел желаемое поведение, созданное с помощью mod_perl, который имеет полнофункциональный API ответа.
  • mod_php плохо спроектирован и использует обработчик в стиле apache1 вместо фильтров apache2, эффективно отключая возможность передачи управления обратно httpd.
  • Наиболее рекомендуемое решение - отказаться от функций Apache и заново реализовать всю логику обработки с использованием сценариев PHP.
...