Die URL-Syntax ist http://web.archive.o...riginalseite.de, ausgeliefert wird die originale Webseite, ergänzt um einen Footer, der zumindest dynamisch für den Browser mittels DOM an jeden Link (Anchor, Image, Object) das "http://web.archive.org/web/datum/http://" vorne dranhängt. Ferner wird in den Header noch ein BASE-HREF gepackt, der auf die Originalwebseite verweist.
Und jetzt will das jemand crawlen, mit Wget oder Httrack.
Das Problem: Die können kein JavaScript, und bieten auch keine Option, die URLs anderwaltig umzuschreiben. Zudem kommt Wget mit dem doppelten "http://" in der URL nicht klar.
Meine Lösung wäre ein Header-Rewrite, optional mit einer DNS-Manipulation. Nur irgendwie krieg ich das nicht recht hin.
Privoxy geht irgendwie nicht, und selbst wenn, es wird der Server aufgelöst, bevor der Request abgeht, d.h. es würde die umgeschriebene URL mitsamt "Host: web.archive.org" an den Server der Originalwebseite geschickt. Um umgebogener DNS-Auflösung ist geht das schon etwas besser, nur scheint man dort den GET-Request nicht mehr umschreiben zu können, es kommt immer ein "Could not get regex filter state".
{+filter-client-header +filter{foo}} www.originalseite.de Filter: foo bar s/^GET /GET org/web/datum/http://www.originalseite.de/ s/Host: www.originalseite.de/Host: web.archive.org/
Apache mit mod_proxy und mod_rewrite scheint zumindest soweit zu laufen, als daß es korrekt umgeschrieben und der Proxy-Request mitgeteilt wird. Das ist aber für Wget scheiße, und es kommt nur sowas wie "http://web.archive.org/web/datum/http:/proxy:www.originalseite.de" dabei raus. Doppeltes Rewrite macht er auch nicht.
RewriteEngine On RewriteRule ^(.*)$ http://web.archive.org/web/20020815145325/http://$1 [P] RewriteRule ^(.*)http:\/proxy:(.*)$ $1$2 [P] ProxyRequests On
Ich hab mich auch schon an Heritrix, dem Crawler von Archive.org selbst, sowie dessen Mod HeritixWebLab probiert, weil der automatisch solche Rewrite einfügen bzw. entfernen kann, aber direkt steuern lässt sich das offenbar nicht.
Also, hat jemand 'ne Idee, was wo schiefgegangen ist oder wie man das anders angehen könnte?