.htaccess Hotlinking Bloqueando Todas as Solicitações

2

Eu quero bloquear hotlinking de arquivos PDF em um site. Anteriormente, eu usei esse método para bloquear hotlinking para arquivos zip em um servidor diferente. Aqui está o meu .htaccess:

RewriteEngine on

RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?mysite.com/.*$ [NC]
RewriteRule \.(pdf)$ - [F,NC]

É um código quase idêntico ao outro site em que eu o uso, exceto que eu tenho "zip" no lugar de "pdf". Por alguma razão, neste servidor apache ele está bloqueando não apenas os pdfs, mas tudo. Arquivos PHP e HTML acessados através do navegador estão dando o erro proibido. Alguém pode ver algo que eu estou sentindo falta neste bloco ou ter alguma idéia do que pode estar causando isso?

    
por Mesidin 08.06.2009 / 19:47

3 respostas

1

Diagnóstico: o que acontece se você colocar um .htaccess contendo apenas RewriteEngine on ? O que estamos verificando é se há regras mal-intencionadas definidas pelo servidor que alguém deixou por aí, contando com RewriteEngine desativando-as.

Os comentários mostram que este é o caso. Impressionante. A única coisa em que posso pensar para tentar é soluções que não usam mod_rewrite , como:

SetEnvIf Referer . hotlink=1
SetEnvIfNoCase Referer ^http://(www\.)?domain\.com/.*$ !hotlink
<LocationMatch *.pdf>
    Order allow,deny
    Deny from env=hotlink
    Allow from all
</LocationMatch>
    
por 08.06.2009 / 19:57
0

Tente:

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?domain\.com/.*$ [NC]
RewriteRule .*\.pdf$ - [F,L]
    
por 08.06.2009 / 20:09
0

Tente isso, no meu servidor funciona corretamente:

#Enables mod_rewrite, otherwise all Rewrite directives below will not work
RewriteEngine on

#Hotlink protection
RewriteCond %{HTTP_REFERER} !^http://mysite.com/.*$      [NC]
RewriteCond %{HTTP_REFERER} !^http://mysite.com$      [NC]
RewriteCond %{HTTP_REFERER} !^http://www.mysite.com/.*$      [NC]
RewriteCond %{HTTP_REFERER} !^http://www.mysite.com$      [NC]
RewriteRule .*\.(pdf|zip)$ - [F,NC]
    
por 23.02.2010 / 16:34