2

Я знаю, что можно ограничить доступ к каталогу директивой allow from ip.ip.ip.ip

Но у меня есть немного (?) Другая проблема: существует каталог, который содержит только файлы PDF. Я хочу ограничить доступ к этим файлам: - Когда вы пытаетесь отобразить эти PDF-файлы, введя ссылку в вашем браузере, например, http://domain/pdf_path/pdf1.pdf вызов должен завершиться неудачно. - Но если пользователь открывает файл, щелкнув ссылку из http://domain/ , например, из исходного файла http://domain/index.php , файл PDF должен отображаться.

Есть ли способ добиться этого в .htaccess (не http.conf)?

1 ответ1

4

Вы можете проверить заголовок HTTP referer в .htaccess . Реферер указывает адрес веб-страницы, которая ссылается на извлекаемый ресурс, так что вы можете проверить, ссылается ли он на страницу в нужном домене.

Подробности смотрите, например, на этом вопросе: управляйте реферером apache для ограничения загрузок в файле htaccess

Предупреждение:

Это легко обойти, если люди знают имя домена, который вы проверяете. Большинство браузеров и инструментов загрузки позволяют напрямую устанавливать реферер, поэтому, если вы знаете, что разрешены только рефереры, указывающие на http://foo.example/ , вы можете просто установить ваш реферер на http://foo.example/blah , и проверка доступа не заблокирует вас.

Если вы хотите серьезной безопасности, единственный разумный вариант - это, вероятно, правильная аутентификация (по имени пользователя / паролю или по сертификату) в сочетании с веб-сайтом, поддерживающим только HTTPS.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .