Como posso evitar hotlinking? (nginx)

1

Eu uso o nginx e não tenho acesso ao servidor conf.

Pode estar com o análogo do .htaccess? ..

    
por NARKOZ 06.12.2009 / 20:54

5 respostas

4

Sem acesso à configuração do servidor, você não pode alterar nenhuma configuração. Não há equivalente ao .htaccess do Apache httpd no nginx.

    
por 06.12.2009 / 21:07
7
location ~* (\.jpg|\.png|\.gif|\.jpeg)$ {
 valid_referers blocked www.domain.com domain.com;
 if ($invalid_referer) {
    return 403;
 }
  root   /srv/www/domain.com/public_html;
}
    
por 14.02.2010 / 14:56
2

Apenas no caso de você ter acesso ao servidor da Web:

location ~* (\.jpg|\.png|\.gif|\.jpeg|\.png)$ {
 valid_referers none blocked www.example.com example.com;
 if ($invalid_referer) {
    return 403;
 }
}
    
por 18.11.2011 / 19:04
0

joschi está certo: o nginx é acionado por um único arquivo de configuração que você não pode editar. Sua única possibilidade é usar um script redirecionador que diga '403 Acesso negado' para hotlinks e '301 movido permanentemente' para links normais.

    
por 07.12.2009 / 00:46
0

Uma solução é gerar todas as suas páginas & conteúdo dinamicamente e com URLs diferentes sempre, que expiram depois de um tempo. Isso torna o hotlinking impossível.

Se isso não for prático, você também pode verificar o referenciador. Se você não pode reconfigurar o nginx, você provavelmente terá que fazê-lo em uma linguagem de script que gera as páginas dinamicamente.

    
por 07.12.2009 / 01:43