Stefan M.: RewriteRule ergibt HTTP 403

Auf meinem System läuft ein Apache 2.2.4 mit den aktuellen stabilen Versionen von PHP und MySQL. Ich habe mich bei SelfHTML, Wikipedia und im Apache-Handbuch zu regulären Ausdrücken belesen und folgende .htaccess für eine in der Entwicklung befindliche PHP-Anwendung zusammengestellt (hier mit suggestiveren Ordnernamen):

RewriteEngine on
RewriteRule /zugriff/(.*)$ /programm/index.php?$1

Wenn also eine GET-Anfrage auf /zugriff/Test kommt, soll diese umgeleitet werden nach /programm/index.php?Test

Die direkte Anfrage von /programm/index.php?Test funktioniert tadellos, wenn ich jedoch /zugriff/Test anfrage, erhalte ich einen 403 Forbidden. Im Logfile des Apache steht:

127.0.0.1 - - [15/Feb/2007:12:58:02 +0100] "GET /zugriff/Test HTTP/1.1" 403 234

Die .htaccess liegt im htdocs-Verzeichnis. In der httpd.conf habe ich mod_rewrite hinzugefügt und in <Directory "C:/Programme/apache/htdocs"> die Options-Anweisung auf All gestellt. Der Zugriff ist auf den Localhost beschränkt.

Außerdem habe ich diverse andere Container ausprobiert, zum Beispiel

<Location /zugriff>
    Order deny,allow
    Deny from all
    Allow from 127.0.0.1
</Location>

wobei es den Ordner zugriff eigentlich gar nicht gibt, der soll ja umgeleitet werden. Auch habe ich schon geprüft, wie die Zugriffsrechte auf dem Laufwerk aussehen, aber die sind alle (auch im /programm-Ordner) auf mindestens 744 eingestellt.

Für jeden Tipp bedanke ich mich im Voraus.
Mit freundlichen Grüßen

  1. hi,

    Für jeden Tipp bedanke ich mich im Voraus.

    RewriteLog konfigurieren, Nachschauen was falsch laufen könnte.

    gruß,
    wahsaga

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

      RewriteLog konfigurieren, Nachschauen was falsch laufen könnte.

      Ich hab mal mit RewriteLogLevel 9 reingeschaut und gesehen, dass nur das favicon.ico, das Opera anfragt, umgeschrieben wird. Jetzt liegt die RewriteRule in der httpd.conf und damit läufts. Danke für den Tipp.

      1. hi,

        Ich hab mal mit RewriteLogLevel 9 reingeschaut und gesehen, dass nur das favicon.ico, das Opera anfragt, umgeschrieben wird. Jetzt liegt die RewriteRule in der httpd.conf und damit läufts.

        OK, aber sollte so ja eigentlich auch zum laufen zu bringen sein.

        Vielleicht hätte die Angabe einer passenden RewriteBase weitergeholfen.

        gruß,
        wahsaga

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