Apache: negar acesso ao diretório, mas permitir 1 arquivo

Apache: negar acesso ao diretório, mas permitir 1 arquivo

Estou usando o Apache 2.2.22 no Ubuntu 12.04.

Preciso desabilitar o acesso ao diretório, /var/www/abc/mas permitir o acesso ao arquivo dentro deste diretório /var/www/abc/README.txt. Eu tento:

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

Mas não funciona - o acesso ao diretório está desabilitado (ok) e o arquivo está desabilitado (não ok).

O que eu faço de ruim?

Responder1

A tag de arquivos deve usar o caminho relativo ao diretório. Com caminho absoluto ( <Files /var/www/abc/README.txt>) não funciona.

Isso funciona:

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

informação relacionada