tablica ze statusami błędów http

Tablica ze statusami błędów HTTP + tłumaczenie po polsku oraz wpisy do pliku .htaccess z tymi błędami:

//Tablica ze statusami błędów by tosiek ( https://tosiek.pl/ )
$errors = array(
	//Client errors - po stronie klienta
	'400'=>array('Bad Request','Błędne żądanie'),
	'401'=>array('Unauthorized','Brak autoryzacji'),
	'402'=>array('Payment Required','Wymagana opłata'),
	'403'=>array('Forbidden','Dostęp zabroniony'),
	'404'=>array('Not Found','Nie znaleziono'),
	'405'=>array('Method Not Allowed','Metoda nie dozwolona'),
	'406'=>array('Not Acceptable','Brak akceptacji'),
	'407'=>array('Proxy Authentication Required','Wymagana autoryzacja proxy'),
	'408'=>array('Request Time-out','Zapytanie przekroczyło czas oczekiwania'),
	'409'=>array('Conflict','Konflikt'),
	'410'=>array('Gone','Zniknął'),
	'411'=>array('Length Required','Wymagana długość'),
	'412'=>array('Precondition Failed','Nie spełniono warunku wstępnego'),
	'413'=>array('Request Entity Too Large','Zbyt duże żądanie'),
	'414'=>array('Request-URI Too Large','Adres URI zapytania jest zbyt długi'),
	'415'=>array('Unsupported Media Type','Niewspierany typ medium'),
	'416'=>array('Requested range not satisfiable','Żądany zakres nie obsługiwany'),
	'417'=>array('Expectation Failed','Niepowodzenie oczekiwania'),
	//Server errors - po stronie serwera
	'500'=>array('Internal Server Error','Wewnętrzny błąd serwera'),
	'501'=>array('Not Implemented','Niezaimplementowane'),
	'502'=>array('Bad Gateway','Błąd bramy'),
	'503'=>array('Service Unavailable','Usługa niedostępna'),
	'504'=>array('Gateway Time-out','Przekroczony czas oczekiwania bramy'),
	'505'=>array('HTTP Version not supported','Brak wsparcia dla tej wersji HTTP'),
	'509'=>array('Bandwidth Limit Exceeded','Przekroczono limit transferu'),
);

Do tablicy odnosimy się:
$errors[numer_błędu][jezyk_opisu]
(gdzie jezyk_opisu to: 1 – polski, 0 – angielski który jest także nagłówkiem dla przeglądarki)

Więc dla polskiego opisu dla błędu 404:
$errors[404][‘1’]

Dla angielskiego opisu dla błędu 404: (angielski opis jest takze nagłówkiem wysyłanym do przeglądarki)
$errors[404][‘0’]

Wpisy do pliku .htaccess ze wszystkimi wyżej wymienionymi błędami HTTP:

#Bledy numeryczne na error.php
RewriteRule ^([0-9][0-9][0-9])+$ /errorek.php?error=$1 [L,NC]
#Bledy HTTP - wlasna strona bledu
#Client error - po stronie klienta
ErrorDocument 400 /400
ErrorDocument 401 /401
ErrorDocument 402 /402
ErrorDocument 403 /403
ErrorDocument 404 /404
ErrorDocument 405 /405
ErrorDocument 406 /406
ErrorDocument 407 /407
ErrorDocument 408 /408
ErrorDocument 409 /409
ErrorDocument 410 /410
ErrorDocument 411 /411
ErrorDocument 412 /412
ErrorDocument 413 /413
ErrorDocument 414 /414
ErrorDocument 415 /415
ErrorDocument 416 /416
ErrorDocument 417 /417
#Server error - po stronie serwera
ErrorDocument 500 /500
ErrorDocument 501 /501
ErrorDocument 502 /502
ErrorDocument 503 /503
ErrorDocument 504 /504
ErrorDocument 505 /505
ErrorDocument 509 /509

Jak widać powyżej strony błędów są pobierane z adresu /XXX gdzie XXX to numer błędu. Natomiast reguła RewriteRule wczytuje dokument errorek.php ze zmienną GET error=$1 gdzie $1 to numer błedu jak i adres wywołanej strony.

1 Comment

  1. dzięki na pewno się przyda

Dodaj komentarz