Мне нужно отправить «500 Internal Server Error» из сценария PHP при определенных условиях. Предполагается, что сценарий будет вызываться сторонним приложением. Сценарий содержит пару операторов die ("this happend")
, для которых мне нужно отправить код ответа 500 Internal Server Error
вместо обычного 200 OK
]. Сторонний сценарий повторно отправит запрос при определенных условиях, в том числе при отсутствии кода ответа 200 OK
.
Вторая часть вопроса: мне нужно настроить свой сценарий следующим образом:
<?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
Будут ли такие ошибки регистрироваться веб-сервером?