Как можно заблокировать прямой доступ к файлам на apache, но разрешить их через скрипты? - PullRequest
0 голосов
/ 25 мая 2018

Если я наберу прямой путь к любому содержимому в каталоге моего сервера, я смогу увидеть и загрузить файл без входа в систему. (Например, у меня есть каталог foo с файлом bar.jpg в нем. Если я набираюв строку поиска "ip: port / foo / bar.jpg Я могу видеть картинку, не просматривая созданные мной страницы). Я знаю, что это будет трудно получить доступ, но если это может произойти, это в конечном итоге будет.способ, позволяющий моему php-скрипту получать доступ к файлам и отображать их на веб-странице, но не разрешать прямой доступ к содержимому на моем сервере при вводе? Я пробовал файлы .htaccess и напрямую изменял конфигурацию сервера в apache, мой доступ выглядитвот так:

<Directory "C:\xampp\htdocs\RootFolder\Login System">
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?Family [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ - [NC,F,L]
</Directory>

Проблема здесь в том, что он случайным образом блокирует некоторые изображения на моей странице, позволяя другим проходить через:

GET http://localhost/Family/IMG_2436.jpg 403 (Forbidden)

Я бился головой, пытаясь получить этоработать так, что если кто-то набирает прямую ссылку, ему будет отказано в доступе, а доступ через мою страницу php просто покажет картинкуr файлЕсть какой-либо способ сделать это?PS Я использую базу Windows

...