ASP od. PHP: Fremde Links auf Existenz überprüfen
shaheen
- programmiertechnik
Hallo allerseits!
Ziel:
Weiß jemand, wie man mittels ASP oder PHP einen fremden Link danach überprüfen kann, ob die Seite existiert.
Grund:
Man stößt immer wieder auf den Error404, wenn es die referenzierte Seite nicht mehr gibt oder verschoben wurde. Ich möchte gezielt Ordner auf dem Webserver mittels ASP oder PHP abscannen und alle sich darin vorkommenden Links nach Gültigkeit überprüfen und entsprechend einen Bericht an den Admin schicken. Den ersten Teil habe ich schon hinbekommen, es fehlt nur noch die Möglichkeit, fremde Links, die auf anderen Webservern liegen auch nach Gültigkeit zu überprüfen.
Ich danke im Voraus für jeden Vorschlag!
Gruß
Shaheen
Hallo allerseits!
Ziel:
Weiß jemand, wie man mittels ASP oder PHP einen fremden Link danach überprüfen kann, ob die Seite existiert.
Im Prinzip so: Du rufst per HTTP eine Seite ab, suchst dort nach Links, und rufst dann diese Seiten alle ab. Kommt "200 OK", ist alles in Butter, kommt "404 not found", machst du die Fehlermeldung. Bei den gefundenen Seiten fängst du wieder von Vorne an.
Zusatzpunkte gibt es für das Verfolgen von:
Richtig Pluspunkte gibt es, wenn du verhinderst, daß sich Seiten gegenseitig aufrufen, und so eine Endlosschleife betreten wird. Dazu solltest du eine Liste haben (ein Hash am Besten), in die du geprüfte Seiten schreibst, um sie dann nicht nochmal auf Links zu untersuchen.
Nicht einfach, die Aufgabe, aber machbar.
Warum mit HTTP die Seiten abfordern? Weil HTTP das ist, was der User benutzt. Und ich glaube nicht, daß du PHP-Dateien parsen willst, um die möglicherweise dynamisch zusammengesetzten Links herauszufinden. Das vereinfacht also deine Aufgabe.
Ich möchte sowas eigentlich lieber nicht selber schreiben. Viel besser wäre doch, immer wenn Seite 404 kommt, eine Mail an den Admin loszuschicken. Entweder automatisch (dann ist die 404-Seite ein PHP-Skript, was den Referrer auswertet und mitschickt, damit man die auslösende Seite findet), oder per Eingabeformular, oder beides.
Dann muß nur noch ein Praktikant die Seiten alle durchsurfen, und gut ist. Oder ein Programm, welches komplette Websites auf Festplatte zieht.
- Sven Rautenberg