Запретить браузеру скачивать doc docx и pdf
У меня есть некоторые проиндексированные файлы документов ( .doc, .docx и.pdf), хранящиеся в папке на веб-сайте.
когда я набираю полный адрес файла (например, http://www.website.com/folder1/folder2/1.doc), посетитель или любой орган, просматривающий веб-сайт, может легко загрузить файл.
Есть ли способ предотвратить это. Нужно ли выполнить какие-либо настройки для файла.htaccess, чтобы этого не произошло?
Также, если folder2 содержит только файл документа, как я могу предотвратить вывод списка файлов в этой папке, если apache перестал работать.
благодарю вас
2 ответа
Вы проиндексировали файлы документов, то есть вы позволяете сканерам извлекать ваши файлы, но вы не хотите, чтобы люди вводили точный URL и скачивали его.
Итак, вот несколько примеров
Добро пожаловать в Googlebot, но когда нет реферера, отклоните его.
SetEnvIf User-Agent "Googlebot" welcome
SetEnvIf Referer "^$" reject
order Allow,Deny
Allow from env=welcome
Deny from env=reject
(Примечание:Referer может явно отключить в веб-браузерах, и есть еще много других способов получить файлы, вместо того, чтобы вводить точный URL в браузерах.)
Чтобы предотвратить доступ к некоторым конкретным файлам, используя htaccess, вы можете написать следующее:
<files 1.doc>
order allow,deny
deny from all
</files>
внутри вашего.htaccess, который находится в каталоге, который содержит 1.doc.
Если вы хотите запретить доступ к определенным типам файлов в целом, вы можете использовать:
<FilesMatch "\.(doc|pdf)$">
Order Allow,Deny
Deny from all
</FilesMatch>
Вы можете редактировать список в круглых скобках в соответствии с вашими потребностями.
Для получения дополнительной информации о htaccess см. Следующее: http://perishablepress.com/press/2006/01/10/stupid-htaccess-tricks/
Относительно того, "как я могу предотвратить вывод списка файлов в этой папке на случай, если Apache перестал работать.", Я не совсем уверен, что вы имеете в виду... если Apache перестанет работать, никто не сможет получить доступ к чему-либо!