Intereting Posts
Почему скрипт php замедляется? PHP: уникальные посещения / обращения к определенным элементам с помощью файлов cookie / ip Автоматически загружать файл config.php для всех страниц перед чем-либо еще Могу ли я использовать phpBB в качестве «поддельного» поставщика идентификации? Определите PHP-функцию в XSL и вызовите ее. Возможное? Как? PHP – правильная проверка, если отправлен $ _POST Как программно определить корень документа в PHP? При импортировании CSV-заголовка или первой строки Установка переменной сеанса в laravel Как избежать вручную передать мой контейнер реестра $ в конструктор каждого нового класса, который я делаю? Сократить заголовок до ближайшего слова php тот же результат, добавляющий различное количество vars Почему SQLite настолько медленный (~ 2 q / s) на конкретной машине? Удалить имя контроллера из URL-адресов в Yii2 Как я могу автоматически определять дневную экономию на PHP?

Доступ к папке PHP / Apache Deny для пользователей, но не сценарий

Поэтому у меня есть это веб-приложение php, и одна из моих папок содержит некоторые файлы, которые можно загрузить.

У меня есть сценарий загрузки, который изменяет заголовки, чтобы всегда предлагать ссылку для загрузки. (вместо того, чтобы показывать изображение, например, когда вы нажимаете на ссылку, появляется окно загрузки)

Прямо сейчас, если вы вводите URL-адрес, например: http://www.mywebsite.com/content/ Вы получаете список всех загружаемых файлов, и, конечно же, вы можете просто загрузить их все, не проходя через интерфейс веб-сайта.

Лично я не думаю, что это проблема, так как я часто использую downthemall или другой инструмент для загрузки, и этот тип доступа – отличная экономия времени ….

Но, конечно, моя компания так не думает: -p Они хотят, чтобы люди использовали интерфейс для просмотра объявлений …

Будут ли они способом, возможно, с защищенным .htaccess, чтобы оставить доступ к папке для моего сценария загрузки, но запретить доступ к пользователям …?

Надеюсь, у меня есть смысл, и вы знаете, что я имею в виду 🙂

Вся помощь / замечания оценены!

Вы можете создать файл .htaccess и ввести Options -Indexes это отключит список файлов в каталоге.

Если вам также нужен трафик для создания вашего сайта, вам нужно сделать файл say … index.php с кодом, который проверяет $_SERVER['HTTP_REFERER'] чтобы узнать, происходит ли трафик с вашего сайта.

РЕДАКТИРОВАТЬ

О, я забыл, что вы можете исправить все это в .htaccess:

 Options -Indexes RewriteEngine On RewriteCond %{HTTP_REFERER} !^http://your-host.com/.*$ [NC] RewriteRule ^.* /403-page [L,R] 

Это сделает всю работу скрипта, который я предложил, поэтому вам больше не понадобится.

Переместите папку из корневого каталога веб-сервера, чтобы апача вообще не удаляла файлы сервера из этого каталога. Вы все еще можете включать файлы из папки, если они читаются пользователем apache / http, но пользователи вашего сайта не смогут получить к нему доступ из любого URL-адреса.

Да, это правильно. .access файлы блокируют доступ к пользователям, но не влияют на локальные серверные скрипты.

 Deny from all 

в .htaccess или переместить файлы выше корня документа