Skip to content

Instantly share code, notes, and snippets.

@rfair404
Created December 4, 2018 16:57
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save rfair404/7521f46696cccc0b156ead659a876b2d to your computer and use it in GitHub Desktop.
Save rfair404/7521f46696cccc0b156ead659a876b2d to your computer and use it in GitHub Desktop.
WP mu-plugin for testing HTTP error codes
<?php
if( isset( $_GET['code'] ) && isset( $_GET['error'] ) ) {
add_action('send_headers', 'error_test_check_headers');
}
function error_test_check_headers() {
$codes = error_test_get_codes();
$code = $_GET['code'];
if( ! isset( $codes[$code] ) ) {
return;
}
$header_string = "HTTP/1.0 " . $codes[$code];
@header($header_string);
exit();
}
function error_test_get_codes() {
return [
"400" => "400 Bad Request",
"401" => "401 Unauthorized",
"402" => "402 Payment Required",
"403" => "403 Forbidden",
"404" => "404 Not Found",
"405" => "405 Method Not Allowed",
"406" => "406 Not Acceptable",
"407" => "407 Proxy Authentication Required",
"408" => "408 Request Timeout",
"409" => "409 Conflict",
"410" => "410 Gone",
"411" => "411 Length Required",
"412" => "412 Precondition Failed",
"413" => "413 Payload Too Large",
"414" => "414 URI Too Long",
"415" => "415 Unsupported Media Type",
"416" => "416 Requested Range Not Satisfiable",
"417" => "417 Expectation Failed",
"418" => "418 I'm a teapot",
"421" => "421 Misdirected Request",
"422" => "422 Unprocessable Entity",
"423" => "423 Locked",
"424" => "424 Failed Dependency",
"425" => "425 Too Early",
"426" => "426 Upgrade Required",
"428" => "428 Precondition Required",
"429" => "429 Too Many Requests",
"431" => "431 Request Header Fields Too Large",
"451" => "451 Unavailable For Legal Reasons",
"500" => "500 Internal Server Error",
"501" => "501 Not Implemented",
"502" => "502 Bad Gateway",
"503" => "503 Service Unavailable",
"504" => "504 Gateway Timeout",
"505" => "505 HTTP Version Not Supported",
"506" => "506 Variant Also Negotiates",
"507" => "507 Insufficient Storage",
"508" => "508 Loop Detected",
"510" => "510 Not Extended",
"511" => "511 Network Authentication Required",
];
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment