Błąd 404 nie koniecznie musi być tym „czarnym narożnikiem” naszej strony. Możemy sprawić aby był przyjazny dla użytkownika i wykorzystać go na potrzeby serwisu.
Jak? Po prostu musimy go należycie obsłużyć :), tak aby zamiast wyskakiwania błędu 404 PAGE NOT FOUND – wyświetlała się jakaś ciekawa strona – przepraszająca użytkownika – i zachęcająca do dalszego przeglądania serwisu.
A więc do dzieła.
Na początku musimy stworzyć plik o przykładowej nazwie blad404.html, w którym zamieszczamy swoją „zachętę” do dalszego przeglądania strony,i umieszczamy go na serwerze. A następnie musimy wyedytować plik .htaccess znajdujący się w katalogu głównym serwera, wpisując w niego dyrektywę obsługująca dany błąd , czyli w naszym przypadku błąd 404 wpisując:
ErrorDocument 404 /blad404.html
Lub
ErrorDocument 404 http://naszastrona.pl/blad404.html
Gdzie http://naszastrona.pl/blad404.html – to adres do danego pliku wyświetlającego naszą “wartościową informację”.
Hmm, a co w przypadku kiedy nie możemy odnaleźć pliku .htaccess ?
No to trzeba będzie go stworzyć otwierając notatnik i zapisując plik ustawiając opcję: zapisz jako typ: wszystkie pliki *.*, a w nazwie pliku wpisujemy .htaccess – pamiętając o kropce z przodu. Tak stworzony plik umieszczamy w katalogu głównym naszego serwera.
Poniżej przedstawiam listę innych możliwych błędów aplikacji po stronie użytkownika zaczynają sie one od cyfry 4:
- 400 Bad Request – Błędne zapytanie
- 401 Unauthorized – Dostęp wymaga autoryzacji
- 402 Payment Required – Wymagana opłata
- 403 Forbidden – Dostęp został zabroniony
- 404 Not Found – Nie znaleziono pliku na serwerze
- 405 Method Not Allowed – Metoda niedozwolona
- 406 Not Acceptable – Nie można zwrócić odpowiedzi na dane zapytanie
- 407 Proxy Authentication Required – Wymagana autoryzacja
- 408 Request Time-out – Przekroczono czas oczekiwania
- 409 Conflict – Konflikt statusów pomiędzy zasobami
- 410 Gone – Zasób, którego żądasz został usunięty
- 411 Length Required – Odmowa realizacji, ze względu na brak Content-Lenght
- 412 Precondition Failed – Nie spełniono warunków
- 413 Request Entity Too Large – Za długie zapytanie
- 414 Request-URI Too Large – Adres URL zapytania jest za długi
- 415 Unsupported Media Type – Niezrozumiały komunikat dla serwera
- 416 Requested range not satisfiable – Żądany zakres nie jest obsługiwany
- 417 Expectation Failed – Niepowodzenie w zwracaniu zawartości
Natomiast błędy rozpoczynające się od cyfry 5 są błędami wynikającymi z pracy serwera:
- 500 Internal Server Error – Wewnętrzny błąd serwera
- 501 Not Implemented – Zapytanie nie zostało zrozumiane przez serwer. Nie zwrócono żądanej zawartości
- 502 Bad Gateway – Błąd bramy, zwrócona wartość przez serwer jest niepoprawna
- 503 Service Unavailable – Przeciążenie lub brak dostępności serwera
- 504 Gateway Time-out – Przekroczony czas oczekiwania na odpowiedz serwera.
- 505 HTTP Version not supported – Ta wersji HTTP nie jest obsługiwana przez serwer
Ze wszystkimi błędami możemy sobie poradzić stosując analogiczny proces myślenia z przykładu z góry strony.. Tak więc powodzenia.