Jan Deppisch: URL Rewriting

Hallöle!

Ich habe ein Verzeichnis auf dem Server, dessen Name mit '#' beginnt. Der Apache verhält sich ziemlich merkwürdig, wenn ich dann eine URL, die so aussieht, aufrufe:

http://www.blablubb.de/#tollesverzeichnis

Resultat: Der Browser springt zur Startseite... Logisch, da er das tolle Verzeichnis als Anker interpretiert, diesen in der Startseite nicht findet und sie deshalb einfach anzeigt.

Um diesen Effekt zu vermeiden, müsste ich wohl die URL Rewriting Engine des Apache bemühen, oder ?

Kann mir einer der Indianer- und RegExp-Experten sagen, wie die Rewrite Rule lauten müsste ? Bin auch sonst für andere Tips dankbar.

(Nein, das Verzeichnis benenne ich nicht um :-))

Gruss,

Jan

  1. hi!

    Ich habe ein Verzeichnis auf dem Server, dessen Name mit '#'
    beginnt. Der Apache verhält sich ziemlich merkwürdig, wenn ich
    dann eine URL, die so aussieht, aufrufe:
    http://www.blablubb.de/#tollesverzeichnis
    Resultat: Der Browser springt zur Startseite... Logisch, da er das
    tolle Verzeichnis als Anker interpretiert, diesen in der
    Startseite nicht findet und sie deshalb einfach anzeigt.

    Da alles ab dem #-Zeichen gar nicht erst an den Server übermittelt
    wird, kannst du das gleich vergessen. Entweder benennst du das
    Verzeichnis um oder du kannst eben nicht via Web-Server darauf
    zugreifen.

    bye, Frank!

  2. Moin,

    http://www.blablubb.de/#tollesverzeichnis
    (Nein, das Verzeichnis benenne ich nicht um :-))

    das wirst du wohl muessen, denn
    * #Fragmente sind zwar Teil des URI, aber nicht Teil des URLs, die am Server ueberhaupt ankommen
    * beim Server kommt also nur 'http://www.blablubb.de/' an, '#tollesverzeichnis' behaelt der Browser fuer sich
    * schade eigentlich ;-)

    Viele Gruesse,

    n.d.p.

  3. Hi,

    http://www.blablubb.de/#tollesverzeichnis
    (Nein, das Verzeichnis benenne ich nicht um :-))

    das Verzeichnis mußt Du auch nicht umbenennen - den URL aber schon,
    wie Frank und n.d. dargelegt haben.

    URL-Rewriting ist aber eine arg große Keule für ein so kleines Problem:
    Eine Alias-Anweisung im Apache oder ein symbolic link würden auch reichen.

    Viele Grüße
          Michael

    1. das Verzeichnis mußt Du auch nicht umbenennen - den URL aber schon,
      wie Frank und n.d. dargelegt haben.

      Ok, ich komme wohl nicht drumrum :)

      URL-Rewriting ist aber eine arg große Keule für ein so kleines Problem:
      Eine Alias-Anweisung im Apache oder ein symbolic link würden auch reichen.

      Gut zu wissen, das muss ich mir in der Apache-Doku mal anschauen! Vorerst bevorzuge ich jedoch die naheliegendste Lösung:

      Verzeichnis + URL umbenennen und gut is :)

      Danke für Eure Ratschläge.

      Jan

      1. Hi,

        Verzeichnis + URL umbenennen und gut is :)

        jetzt also doch, nachdem Du Dich zunächst so vehement gewehrt hattest?

        Ich dachte, Du hättest Deine Gründe dafür (z. B. daß in dieses Verzeichnis
        irgendwelche Software installiert ist und eingebrannte Pfade existieren).

        Deshalb hatte ich Methoden vorgeschlagen, um zwischen URL und Pfad eine
        zusätzliche Abstraktionsschicht zu legen.

        Viele Grüße
              Michael

  4. Hallo Jan,

    probiers mal mit http://www.blablubb.de/%23tollesverzeichnis, dann
    bekommt der Apache auch was vom Schweinegatter "#" zu sehen.

    CYa
    GONZO

    1. Hi Gonzo,

      probiers mal mit http://www.blablubb.de/%23tollesverzeichnis, dann
      bekommt der Apache auch was vom Schweinegatter "#" zu sehen.

      Ich weiss, dass man das Gatter url-kodieren kann (hab ich auf einer Seite mittels PHP schon erledigt). Es liest sich nur nich sooo doll :)

      Byebye,

      Jan