Claus vdb: mod_rewrite Frage

Hallo,

ich habe ein Problem mit mod_rewrite. Es funktioniert auf meinem Apache-Server, auf einem anderen Apache-Server aber nicht, obwohl dieser sicher mod_rewrite installiert hat.

Kann das sein, dass folgender Code nicht unbedingt ausreichend ist (für die .htaccess):

RewriteEngine On
RewriteRule ^(.*)$ foo/bar.php?action=$1

Wenn ich so eine Seite aufrufe, bspw "http://example.org/rewrite/Test", bekomme ich eine 403-Fehlermeldung:

You don't have permission to access /rewrite/Test on this server.

Sicher ist jedoch, das irgendetwas von dem Modul wirkt, denn ich kann in dem Ordner "rewrite" nicht mehr normale Dateien aufrufen. An falschen Berechtigungen dürfte es nicht liegen, ich habe alles auf 777 gesetzt. Auch mit absoluter Pfadangabe funktioniert es nicht.

Gibt es ein fehlendes Argument in meiner .htaccess?

Gruß und vielen Dank,
Claus

  1. hallo Claus,

    Wenn ich so eine Seite aufrufe, bspw "http://example.org/rewrite/Test", bekomme ich eine 403-Fehlermeldung:
    You don't have permission to access /rewrite/Test on this server.

    Ja klar. example.org gibt es zwar, aber das ist eine Adresse, die nicht für deine privaten Experimente vorgesehen ist. Lies dir mal durch, was du mit http://www.example.org zu sehen bekommst - keine Sorge, es ist nur ein einziger Satz.

    Suche dir ganz einfach eine Domain bzw. Adresse, auf die du tatsächlich Zugriff hast und probiere es damit dann nochmal.

    Grüße aus Berlin

    Christoph S.

    --
    Visitenkarte
    http://www.christoph-schnauss.de
    ss:| zu:) ls:& fo:) va:) sh:| rl:|
    1. Hallo Christoph.

      Wenn ich so eine Seite aufrufe, bspw "http://example.org/rewrite/Test", bekomme ich eine 403-Fehlermeldung:
      You don't have permission to access /rewrite/Test on this server.

      Ja klar. example.org gibt es zwar, aber das ist eine Adresse, die nicht für deine privaten Experimente vorgesehen ist. [...]

      Eben gerade für Experimente kann example.org geeignet sein.

      Und du weißt, dass es bei obiger URL einen 404er und keinen 403er gibt und damit bewiesen ist, dass dies *nur ein Beispiel* war?

      Einen schönen Dienstag noch.

      Gruß, Ashura

    2. Lieber Christoph,

      Lies dir mal durch, was du mit http://www.example.org zu sehen bekommst - keine Sorge, es ist nur ein einziger Satz.

      ich zähle zwei... *SCNR*

      Liebe Grüße aus Ellwangen,

      Felix Riesterer.

      1. Hallo Felix.

        Lies dir mal durch, was du mit http://www.example.org zu sehen bekommst - keine Sorge, es ist nur ein einziger Satz.
        ich zähle zwei...

        Ich zähle drei.

        *SCNR*

        Dito.

        Einen schönen Dienstag noch.

        Gruß, Ashura

    3. hi Christoph,

      Ja klar. example.org gibt es zwar, aber das ist eine Adresse, die nicht für deine privaten Experimente vorgesehen ist.

      Also manchmal schreibst du echt Stuß ...

      Da kommt schon mal jemand, der nicht real existierende, aber nicht für Beispiele gedachte Domains wie domain.com oder test.de als Beispiel hinschreibt, sondern eine der dafür vorgesehenen nutzt - und statt was zur Frage zu sagen, meckerst du nur deswegen rum.
      Dass example.org als Beispieldomain gedacht war, war doch wohl vermutlich jedem Mitlesenden außer dir hier vollkommen klar.

      gruß,
      wahsaga

      --
      /voodoo.css:
      #GeorgeWBush { position:absolute; bottom:-6ft; }
  2. Hallo,

    gut, die Sache mit dem example.org dürfte dann geklärt sein. Gibt es denn auch noch einen Lösungsvorschlag, oder sieht die Lösung so korrekt aus?

    Andernfalls muss ich noch einmal beim Server-Betreiber nachfragen; es wäre dann nur schön, wenn es nicht nur an meiner falschen .htaccess läge.

    Gruß,
    Claus

    1. Hi Claus,

      gut, die Sache mit dem example.org dürfte dann geklärt sein. Gibt es denn auch noch einen Lösungsvorschlag, oder sieht die Lösung so korrekt aus?

      Je nach Konfiguration des Servers kann ein Einsatz von RewriteBase nötig sein - zumindest habe ich schon mal bei einem Provider in der FAQ gelesen, dass bei ihm eine Umleitung bei fehlernder Angabe nicht funktionieren würde.

      Einfach mal mit RewriteBase / oder so (jenachdem, wo deine .htaccess liegt) ausprobieren...

      PHP selber funktioniert aber auf dem Server? Sonst könnte es nämlich auch sein, dass die PHP Installation fehlerhaft ist (bei PHP über CGI) und der Apache Server das PHP Binary nicht ausführen darf - als Fehlermeldung gibts in dem Fall nämlich auch 403.

      MfG, Dennis.

      --
      Mein SelfCode: ie:{ fl:( br:> va:) ls:[ fo:) rl:( n4:# ss:) de:] js:| ch:{ sh:| mo:} zu:|
      Die FlatBox 0.3 mit Dokumentation ist da!
      Das ist eine Ehrlichkeit, die an Blödheit grenzt. (Thomas Gottschalk)
      1. Gut,

        ich habe die Lösung gefunden dank der spezialisierten Website http://www.modrewrite.de/ .

        In die .htaccess musste noch ein
        Options +SymLinksIfOwnerMatch

        (siehe http://www.modrewrite.de/foren/ftopic82.html unter 3.)

        Vielen Dank für die Hilfe,
        Claus