Heinz-Jürgen Schymura

Link_Test


Besonders als ich noch meine Webseite auf kostenlos zur Verfügung gestelltem, werbe freiem Web-Speicherplatz zu liegen hatte kam es leider immer wieder vor, dass entweder beim Hochladen der Webseite Fehler passierten, oder auch, ohne dass Fehler angezeigt wurden, Seiten einfach nicht auf dem Server vorhanden waren.
So musste ich also eigentlich fast immer jeden einzelnen Link ausprobieren. Mühsam! Denn beim (händischen) Vergleichen der Verzeichnisse und Dateien übersah ich denn doch öfter eine (fehlende) Datei, sei es nun ein Bild oder eine Seite.
So reifte in mir der Gedanke, ein Programm zu schreiben, das alle Links einer (zuerst einmal meiner) Webseite abklappert und dann testet, ob die Datei auch wirklich vorhanden ist. Dies war also der Grundgedanke.
Beim Schreiben des Programmes Link_Test habe ich dann allerdings auch immer darauf geachtet, dass das Programm sich auch auf anderen, unbekannten Webseiten zurechtfindet und dort dann auch alle Links testen kann.
Wenn Sie eine komplette Webseite vom Programm testen lassen wollen, so brauchen Sie nur die Webadresse anzugeben, schon geht es los. Um die gefundenen Links zu testen fordert Link_Test zuerst nur die Dateiinformationen an. Wenn der Server, bei dem die Dateiinformationen angefordert werden, dem Programm mitteilt, dass es einen Fehler gab, wird dieser Fehler sofort in die Fehlertabelle eingetragen. Wenn die Datei jedoch auf dem Server vorhanden ist und es sich um eine Datei vom Typ text/html handelt, wird diese angefordert, um sie dann auf Links zu überprüfen, die dann wieder getestet werden.
So hangelt sich das Programm also auch auf völlig unbekannten Seiten immer weiter und testest alle internen Links  und gibt dann am Ende entsprechend den Einstellungen einen Bericht.
Es kann nun auch mit Umlaute Domains (www.heinz-jürgen-schymura.de) oder mit Verzeichnissen und Dateinamen mit Umlauten umgehen. Auch Umlaute in Get-Übergaben (etwa index.php?Auswahl=März) werden richtig erkannt und entsprechend bearbeitet.
Das Programm enthält eine Anzeige mit Erläuterungen zu den Statuscodes, die der Server bei Anfragen zurück sendet. Hierbei handelt es sich im Wesentlichen um einen Text, den man hier bei einer Suchanfrage erhält.
Etwas Vorsicht ist beim Statuscode 302 walten zu lassen. Dahinter kann sich auch ein fehlerhafter Link befinden, wenn auf dem Webserver eine Umleitung auf eine "Eigene Fehlerseite" festgelegt wurde.
Bei der eigenen Webseite kann man dies umgehen, indem man die Umleitung für die Zeit des Programmlaufes ausschaltet.
Das Programm  Link_Test speichert die Programmeinstellungen beim Beenden für den nächsten Start. Es braucht also Schreibrechte in dem Verzeichnis, in dem es sich selbst befindet.