У меня есть очень большая проблема, которую я безуспешно пытался решить последние несколько дней. У меня есть файлы с расписаниями занятий, они импортируются на сервер из внешнего источника (формат html). Мне нужно заблокировать прямой доступ к этим файлам. Они отображаются скриптом PHP. Итак, это предположения: -файлы, отображаемые через php-скрипт -файлы не могут быть изменены каким-либо образом (html-файлы) -должен быть прямой доступ к этим файлам -сервер - это apache
Любые идеи? Я пробовал использовать htaccess, но, возможно, я недостаточно компетентен, потому что он также блокировал доступ к файлам для php-скрипта.
Заранее спасибо.
Я думаю, что другой способ:
использовать .htaccess
Пример RewriteRule
RewriteEngine on
RewriteRule ^folder/$ http://path_to_different_page.php
файлы, отображаемые через php скрипт
Храните пароли где-нибудь (надежно). HTML-форма для отправки учетных данных. $_POST
читать их. PDO для их чтения. включают для включения файлов, если пользователь авторизован.
-файлы не могут быть изменены никаким образом (html файлы)
Вся логика идет на PHP. Все учетные данные хранятся снаружи.
- к этим файлам не должно быть прямого доступа
Храните файлы вне DocumentRoot.
если вы запрашиваете защиту одного или нескольких файлов с помощью .htaccess, вы можете сделать что-то вроде ниже ...
AuthName "Restricted Area"
AuthType Basic
AuthUserFile /path/to/passwordfile/.htpasswd
AuthGroupFile /dev/null
<Files admin.php>
require valid-user
</Files>
<Files protected.htm>
require valid-user
</Files>
<Files protected2.htm>
require valid-user
</Files>
Вам также необходимо создать один файл .htpasswd и обновить AuthUserFile
путь к расположению этого файла .... Инструмент доступен по адресу http://tools.dynamicdrive.com/password/ создать эти .htaccess
и .htpasswd
файлы.