Apache: Zugriff auf Verzeichnis verweigern, aber 1 Datei zulassen

Apache: Zugriff auf Verzeichnis verweigern, aber 1 Datei zulassen

Ich verwende Apache 2.2.22 unter Ubuntu 12.04.

Ich muss den Zugriff auf das Verzeichnis deaktivieren, /var/www/abc/aber den Zugriff auf die Datei in diesem Verzeichnis zulassen /var/www/abc/README.txt. Ich versuche:

<Directory /var/www/abc/*>
    Order allow,deny
    deny from all
    <Files /var/www/abc/README.txt>
        order allow,deny
        allow from all
    </Files>
</Directory>

Aber es funktioniert nicht – der Zugriff auf das Verzeichnis ist deaktiviert (ok) und die Datei ist deaktiviert (nicht ok).

Was mache ich falsch?

Antwort1

Der Datei-Tag muss einen relativen Pfad zum Verzeichnis verwenden. Mit einem absoluten Pfad ( <Files /var/www/abc/README.txt>) funktioniert das nicht.

Das funktioniert:

<Directory /var/www/abc/*>
    Order allow,deny
    deny from all
    <Files README.txt>
        order allow,deny
        allow from all
    </Files>
</Directory>

verwandte Informationen