Как установить Apache HTTP 503 Код ошибки вместо HTTP 500 на ошибке PHP
-
27-10-2019 - |
Вопрос
Любые идеи, как заменить apache http 500 (ошибка внутреннего сервера) от HTTP 503 (служба недоступна) при ошибке PHP после выключения ошибки PHP? Это гораздо лучший вариант, чтобы информировать пауков, чтобы скоро вернуться на сайт ...
PS было бы здорово иметь возможность добавить повторную попытку к кодам ошибок 50x, если это возможно ...
Приветствия /Марцин
Решение
Я предполагаю, что вы имеете в виду новое поведение PHP (с 5.2.4) по умолчанию бросить 500, если возникает ошибка, и никаких других выводов не производится.
Afaik, это поведение жестко кодируется, вы не сможете изменить это без изменения самого PHP.
Самый простой способ - настройка Пользовательский обработчик ошибок, и, если вы бросите для вас 503:
header("HTTP/1.1 503 Service Unavailable");
echo "--- error message here -----";
die();
Другие советы
Интересно, могли бы вы сделать что -то вроде Apache
Redirect 503 /error/500 /maintenance.html
на
ErrorDocument 500 /error/500
Директива?