order allow, deny bloqueia todo o site

1

Não consigo bloquear o bloqueio de arquivos. Se eu usar a seguinte declaração em .htaccess, bloqueia todo o meu site:

order allow,deny <Files ~ ".*\.(js|JS|css|CSS|jpg|JPG|gif|GIF|png|PNG|mp4|MP4)$"> allow from all </Files>

Estou executando o apache 2.2.22 (Debian)

Se eu comentar as linhas acima, posso acessar meu site novamente. Caso não esteja claro, estou tentando bloquear o download de todos os meus arquivos, exceto os tipos de arquivos permitidos.

Existem várias postagens sobre esse assunto geral aqui e em outros sites, mas estou nisso há duas ou três horas, e não consigo resolver esse problema. Me desculpe se parece óbvio.

Nota: o AllowOverrides está definitivamente ativado. Eu tenho grepped para AllowOverrides em todos os diretórios conf e os diretórios incluídos e ele está ativado em todos os lugares agora. Eu reiniciei o serviço apache2 quando conf alterações foram feitas.

Alguém pode ver o que eu fiz de errado?

    
por mikekehrli 22.03.2016 / 02:15

1 resposta

0

Você pode usar um sistema de comentários baseado em env para permitir e negar acesso ao seu site:

SetEnvIfNoCase request_uri (js|css|jpg|gif|png|mp4|php|html)$ allowedfiles=1
Order deny,allow
Deny from all
Allow from env=allowedfiles

SetEnvIfNocase não faz distinção entre maiúsculas e minúsculas, combina png e PNG .

Você também pode usar mod-rewrite:

RewriteEngine on
##If the request uri doesnt end with these extensions##
RewriteCond %{REQUEST_URI} !(js|css|jpg|gif|png|mp4|php|html)$ [NC]
##forbid the request##
RewriteRule ^ - [F,L]
    
por 22.03.2016 / 04:29