Мне нужно отправить "500 Internal Server Error" из PHP script при определенных условиях. Предполагается, что script вызывается сторонним приложением. script содержит пару операторов die("this happend"), для которых мне нужно отправить код ответа 500 Internal Server Error вместо обычного 200 OK. Третья сторона script повторно отправит запрос при определенных условиях, которые включают в себя не получение кода ответа 200 OK.
Вторая часть вопроса: мне нужно настроить мой script следующим образом:
<?php
custom_header( "500 Internal Server Error" );
if ( that_happened ) {
die( "that happened" )
}
if ( something_else_happened ) {
die( "something else happened" )
}
update_database( );
// the script can also fail on the above line
// e.g. a mysql error occurred
remove_header( "500" );
?>
Мне нужно отправить заголовок 200 только после выполнения последней строки.
Изменить
Вопрос: могу ли я отправить более странные 500 заголовков, таких как:
HTTP/1.1 500 No Record Found
HTTP/1.1 500 Script Generated Error (E_RECORD_NOT_FOUND)
HTTP/1.1 500 Conditions Failed on Line 23
Будут ли регистрироваться такие ошибки на веб-сервере?