Rainer: Wie ist diese geniale .htaccess gemacht?

Ich habe gerade eine Seite entdeckt, die meiner Meinung nach eine gigantische .htaccess haben muss.

Schaut mal nach unter dem Link:

http://www.tophotels.com/suedtirol.shtml

wenn ihr nun z.B. hinten nur .stml eingebt, usw. erscheint trotzdem die Seite suedtirol.shtml. Wie ist das gemacht?

Und weiter noch: Wenn ich die Seite suedtirol. eingebe, dann erscheint eine Auswahl an alternativen, ähnlichen Seiten, die es auf dem Server gibt!

Das letztere interessiert mich am Meisten. Wie sind solche Sachen gemacht. Kann mir da jemand etwas Code liefern?

Wär echt genial

Rainer

BTW: Gerade ist mir aufgefallen, dass wenn ich sudtirol.shtml eingebe, findet er die Seite auch, aber wenn ich sdtirol.shtml eingebe, bietet er keine Multiple Choice an. Würde das trotzdem irgendwie gehen? Wer kann mir weiterhelfen?

  1. hallo, also das erste kann ich dir nicht erklären...
    jedenfalls kann es mit einer .htaccess klappen,
    oder mit dem mod_rewrite.

    das zweite ist "nur" ein Serverfehler, der Serverfehler "Multiple Choices".
    Dabei kann der Server die Datei nicht finden, findet jedoch ähnlich lautende Seiten.
    diese werden dann aufgelistet, et c'est ca.

    hmer

    --
    http://www.devmag.net

  2. Moin!

    wenn ihr nun z.B. hinten nur .stml eingebt, usw. erscheint trotzdem die Seite suedtirol.shtml. Wie ist das gemacht?

    mod_speling

    Dieses Apache-Modul kann kleine Fehler in der URL korrigieren, z.B. das Weglassen eines Buchstabens, indem einfach passende Variationen gebildet werden. Wahrscheinlich (ich hab das noch nicht ausprobiert) werden dann bei mehreren variierten Treffern die möglichen Ergebnisse als Auswahlliste dargestellt.

    - Sven Rautenberg

  3. Huhu Rainer

    etwas ähnliches kannst Du auch mit PHP machen, wenn Du Deine Fehlerseiten frei definieren darfst.
    Dann steht Dir die $REQUEST_URI zur Verfügung und wenn Du jetzt eine Liste aller verfügbaren Seiten hast kannst Du mit similar_text die Übereinstimmung feststellen und z.B. eine Auflistung nach bester Übereinstimmung machen bzw. automatisch auf den besten Treffer weiterleiten.

    Ich habe gerade so eine 404-Seite gebaut und das funktioniert hervorragend, allerdings ist das Projekt noch nicht veröffentlicht daher leider kein Link :-(

    Viele Grüße

    lulu

  4. Moin!

    Ich habe gerade eine Seite entdeckt, die meiner Meinung nach eine gigantische .htaccess haben muss.

    Du meinst gigantisch im Sinne von sehr gross? Nein, sollte nicht viel Code sein.

    Schaut mal nach unter dem Link:
    http://www.tophotels.com/suedtirol.shtml

    wenn ihr nun z.B. hinten nur .stml eingebt, usw. erscheint trotzdem die Seite suedtirol.shtml. Wie ist das gemacht?

    Das erledigt mod_speling, wie Sven schon sagte. (http://httpd.apache.org/docs/mod/mod_speling.html)

    Und weiter noch: Wenn ich die Seite suedtirol. eingebe, dann erscheint eine Auswahl an alternativen, ähnlichen Seiten, die es auf dem Server gibt!

    Das ist wiederum eine simple fehlgeschlagene Content negotiation. Das Modul mod_negotiation ist dafuer zustaendig. (http://httpd.apache.org/docs/mod/mod_negotiation.html) Michael hat die Funktionsweise schonmal auf dt. beschrieben: http://aktuell.de.selfhtml.org/artikel/server/alt-http/index.htm (insbesondere Abschnitt multiviews).

    In diesem Fall hat Dein Browser signalisiert, dass er sowohl HTML wie auch verschiedene Bildformate versteht. Normalerweise sucht der Server die am besten passende Variante, die mit dem Basisnamen suedtirol verfuegbar ist, aus und sendet sie dem Browser. Aber diesmal war eine eindeutige Entscheidung nicht moeglich, deshalb brachte der Server eine Seite zum Auswaehlen (die er automatisch generiert hat).

    BTW: Gerade ist mir aufgefallen, dass wenn ich sudtirol.shtml eingebe, findet er die Seite auch

    mod_speling

    , aber wenn ich sdtirol.shtml eingebe, bietet er keine Multiple Choice an.

    Fuer mod_speling zu schwer (schafft nur einen Buchstaben), aber mod_negotiation hat hier nichts zu tun, da es ueberhaupt keine Ressourcen mit so einem Basisnamen gibt, also auch kein Menue.

    So long

    --
    "Wer den freien Genuss von Cannabis befürwortet, nimmt in verantwortungsloser Weise den Tod von Tausenden junger Menschen in Kauf."
        -- Dr. Edmund Stoiber, 1997