Страница ошибок для обработки всех ошибок - CSS-хитрости

Anonim

Это способ сделать одну страницу ошибки для всех ошибок, которую легче обновлять и поддерживать.

1) Поместите все страницы ошибок в одно место в файле .htaccess.

ErrorDocument 400 /error.php ErrorDocument 401 /error.php ErrorDocument 403 /error.php ErrorDocument 404 /error.php ErrorDocument 500 /error.php etc.

2) PHP для страницы error.php в корне

$status = $_SERVER('REDIRECT_STATUS'); $codes = array( 403 => array('403 Forbidden', 'The server has refused to fulfill your request.'), 404 => array('404 Not Found', 'The document/file requested was not found on this server.'), 405 => array('405 Method Not Allowed', 'The method specified in the Request-Line is not allowed for the specified resource.'), 408 => array('408 Request Timeout', 'Your browser failed to send a request in the time allowed by the server.'), 500 => array('500 Internal Server Error', 'The request was unsuccessful due to an unexpected condition encountered by the server.'), 502 => array('502 Bad Gateway', 'The server received an invalid response from the upstream server while trying to fulfill the request.'), 504 => array('504 Gateway Timeout', 'The upstream server failed to send a request in the time allowed by the server.'), ); $title = $codes($status)(0); $message = $codes($status)(1); if ($title == false || strlen($status) != 3) ( $message = 'Please supply a valid status code.'; ) // Insert headers here echo '

'.$message.'

'; // Insert footer here