Как отправить 500 внутренняя ошибка сервера из сценария PHP

Мне нужно отправить "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

Будут ли такие ошибки регистрироваться веб-сервером?

Ответы на вопрос(6)

Ваш ответ на вопрос