.htaccess Permitir acesso não arquivo apenas por link

2

Eu sei que é possível limitar o acesso a um diretório pela diretiva allow from ip.ip.ip.ip .

Mas eu tenho um problema ligeiramente (?) diferente: Existe um diretório, que contém apenas arquivos pdf. Eu quero restringir o acesso a esses arquivos: - Quando você tenta exibir esses arquivos pdf digitando o link em seu navegador, e. g. http://domain/pdf_path/pdf1.pdf a chamada deve falhar. - Mas se o usuário abrir o arquivo clicando em um link em http://domain/ , e. g. do arquivo de origem http://domain/index.php , o arquivo pdf deve ser exibido.

Existe uma maneira de conseguir isso no .htaccess (não http.conf)?

    
por Christian Graf 05.02.2014 / 10:52

1 resposta

4

Você pode verificar o cabeçalho Referenciador de HTTP em .htaccess . O referenciador indica o endereço da página da web que está vinculada ao recurso que está sendo buscado - para que você possa verificar se o remetente aponta para uma página no domínio correto.

Para mais detalhes, veja por exemplo esta pergunta: controla o referenciador do apache para restringir os downloads no arquivo htaccess

Aviso:

Isso é fácil de contornar se as pessoas souberem o nome do domínio que você está verificando. A maioria dos navegadores e ferramentas de download permite definir o referenciador diretamente, portanto, se você sabe que somente os referenciadores que apontam para http://foo.example/ são permitidos, basta definir seu referenciador como http://foo.example/blah e a verificação de acesso não o bloqueará.

Se você quiser segurança séria, a única opção sensata é a autenticação adequada (por nome de usuário / senha ou por certificado), combinada com um site somente HTTPS.

    
por 05.02.2014 / 11:01