Jedną z najważniejszych rzeczy, o które trzeba zadbać podczas tworzenia stron internetowych jest poprawność adresów url. W tym konkretnym wpisie mam na myśli to aby po kliknięciu na dany odsyłacz serwer zwracał stronę ze statusem 200, albo przynajmniej przekierowanie, które ostatecznie trafi do treści docelowej. Wszelkiego rodzaju błędy (500 czy 404) są wysoce niepożądane tak dla użytkownika strony, jak i z punktu widzenia SEO.
Zadanie to mogą ułatwić narzędzia w stylu linkcheckera lub też dodatku do firefoxa Link Evaluator.
Linkchecker to przyjemne konsolowe narzędzie umożliwiające przetestowanie linków zarówno na stronach www udostępnionych w internecie, jak i tych zapisanych na lokalnym dysku. Istnieje też proste gui do niego, które ułatwia pracę ludziom niechętnie używającym terminala. Instalacja jest prosta w przypadku Ubuntu.
sudo apt-get install linkchecker linkchecker-gui |
Oprócz sprawdzania statusów zwracanych przez wszystkie odsyłacze na stronie, linkchecker ma też szereg zaawansowanych opcji w tym sprawdzanie poprawności linków pod kątem zgodności ze specyfikacją html czy css, a także przeskanowanie zwracanej przez odsyłacz treści przez program antywirusowy ClamAV.
Link Evaluator to z kolei dodatek do przeglądarki Firefox. Ma on o wiele mniejszą funkcjonalność niż wspomniane wyżej oprogramowanie nie mniej jego zaletą jest łatwość użycia, wygoda i niezależność od systemu operacyjnego. Po wejściu na daną stronę WWW wystarczy kliknąć prawy przycisk, wybrać z menu kontekstowego „Evaluate Links” i poczekać aż wszystkie url-e na danej podstronie zostaną sprawdzone. Poprane adresy podświetlane są na zielono, z kolei na czerwono zaznaczane są nieprawidłowe linki. Wybranie z menu kontekstowego opcji „Link Evaluator Control Panel” otwiera okienko z opcjami dodatku, ale też z monitorem, w którym możemy obserwować przebieg pracy programu. Znalazłem kilka dodatków do firefoxa oferujących podobną funkcjonalność ale tylko Link Evaluator działał bezbłędnie i uwzględniał przekierowania.
Testowałem też kilka narzędzi online, ale żadne nie zwracało satysfakcjonujących wyników.