Moin!
Hmm, das ist wirklich mal was mit dem ich was anfangen kann. Denn: Ich hab nunmal das Problem dass einige meiner Seiten wech sind und Suchmaschinen diese Teile immer noch indizieren. Meine Frage vor einiger Zeit dazu *wie gebe ich einen 404 zurück und zeige meinem Besucher _gleichzeitig_ eine nette Seite ggf. mit Alternativen* ist hier in diesem Forum ohne Antwort geblieben...
Muss ich wohl übersehen haben.
Allerdings verweise ich in diesem Zusammenhang mal auf die Möglichkeiten der .htaccess-Datei und deren Möglichkeiten.
Mit der Direktive "Redirect" bzw. "RedirectMatch" hast du die Möglichkeit, Zugriffe auf gewisse URLs umzuleiten. RedirectMatch ist dabei recht mächtig, weil es mit regulären Ausdrücken arbeitet.
Ansonsten hast du natürlich auch immer die Möglichkeit, mit URL-Rewriting zu arbeiten.
Das W3C sagt übrigens dazu: "Cool URIs don't change". Soll heißen: Überlege dir ein _vernünftiges_ [1] URL-Schema, welches auch in 2, 20 oder 200 Jahren noch sinnvollen Zugriff auf alle deine Informationen bietet. Wie du dahinter deine Informationen organisierst, ist für den Benutzer vollkommen uninteressant. Das W3C hat sich in dieser Hinsicht eigentlich eine sehr vernünftiges Schema ausgedacht: www.w3.org/thema/unterthema/jahreszahl/dateiname. Gute Beispiele sind in [1] erwähnt.
Beachte auch, dass in einer guten URI _keine_ Hinweise auf die verwendeten Techniken vorkommen. ".html" ist fehl am Platze (was ist, wenn du auf XHTML wechselst? Alles umbenennen?). "cgi-bin" ist fehl am Platze (die CGI-Schnittstelle kann ja irgendwann mal durch etwas viel besseres ersetzt werden).
[1] http://www.w3.org/Provider/Style/URI.html
Wie auch immer, für meine Begriffe ist's ersteinmal wichtig dem Besucher einen entsprechenden Hinweis zu geben!
Diesem grundlegenen Gedanken dient letztendlich auch das Script
404.cgi, try this: http://i-netlab.de/scr or this:
http://i-netlab.de/down - stets landet der Besucher im meinem Downlaodbereich.
Naja, das ist nichts, was nicht per Redirect auch ginge. Warum du allerdings deine URLs geändert hast, ist die größere und interessantere Frage. Ohne Änderung würde die Notwendigkeit des CGI-Skriptes entfallen. Und außerdem mußt du natürlich dafür sorgen, die richtigen Status-Codes auszugeben. Wenn du Zugriffe auf /down umlenken willst, mußt du ein Redirect ausgeben (301 bzw. 302 - je nachdem. Ein permanenter Redirect ist sinnvoll - dann stellen auch Suchmaschinen ihren Index mal um). Wenn du hingegen nichts passendes findest, mußt du Status 404 ausgeben. Das gilt auch für deine Angriffsseite.
Wehe dem jedoch der
http://i-netlab.de/cgi-bin/formmail.pl versucht! Das ist ein Request auf ein Script was *offiziell* dafür bekannt ist dass Sicherheitslücken aufweist (siehe xwolf - Liste) und einem solchen Request begegnet das Script 404.cgi entsprechend (Hinweis auf rechtliche Schritte, Mail an Webmaster...).
Naja, da schießt du doch etwas mit Kanonen auf Spatzen. Nicht jeder, der /cgi-bin/formmail.pl auf deinem Server erreichen will, ist dafür auch selbst verantwortlich, und nicht jedes Programm, was formmail.pl heißt, muß von Matt Wright kommen und Sicherheitslücken aufweisen. Ein schlichter 404-Status "Nicht gefunden" und ein aufmerksames Lesen der Logfiles sollten doch ausreichen. Wenn nämlich kein formmail.pl existiert, dann kann man es nicht hacken. Wo ist das Problem? Auch ein Portscan ist kein Angriff. Ich würde es mit "Angucken eines Hauses, ob es Türen oder Fenster hat" vergleichen. Wenn du nicht willst, dass dein Haus gesehen wird, sorge für dauerhafte Dunkelheit, oder tarne Türen und Fenster als Mauer.
Gerne stellte ich diesen Artikel auch SELF*:TIPPS&TRICKS zur Verfügung. Aber nicht unter den Bedingungen die ich bisher vorfand.
Nimm eine der bestehenden Tipps&Tricks-Seiten, lösche den alten Inhalt, füge den neuen Inhalt ein, und maile diese Seite an Mathias Bigge (der hat die zentrale Verwaltung für T&T-Artikel). Das ist das, was mir als Lösungsmöglichkeit dazu einfällt.
In der Hoffnung dass sich das ändert ;-)
Wenn wir dir Opera zwangsinstalliert hätten, würdest du doch sicherlich auch meckern, oder? :)
- Sven Rautenberg
Diese Signatur gilt nur am Freitag.