|
|
|
| Хостинг предоставляет возможность защитить любую папку паролем. При установке защиты из панели хостинга, в защищаемой папке автоматически формируется файл .htaccess с записью такого содержания:
<Limit GET POST>
require valid-user
</Limit>
AuthType Basic
AuthName "/www/luckytime.ru/pa"
AuthUserFile /home/data/etc/22920967.passwd
|
Соответственно, при попытке запустить страницу по адресу http://luckytime.ru/pa/slovo.txt получаем предложение ввести пользователя и пароль, а при неисполнении этого требования сообщение: "Authorization Required".
Вместе с тем, если запустить скрипт с кодом
$slovo = @file_get_contents("pa/slovo.txt");
echo $slovo ;
|
то содержимое текстового файла воспроизводится в броузере, то есть доступ для скрипта сохранен.
В этой связи есть такой вопрос: все ли правильно в описанной мною ситуации? Возможно ли такое?
Я хочу таким образом защитить папку с паролями пользователей, обращаться к которым будет только скрипт. На самой папке права доступа 777.
Можно ли считать такое решение приемлемым? | |
|
|
|
|
|
|
|
для: Владимир55
(15.11.2007 в 14:25)
| | Функция file_get_contents() может прочитать только локальный файл, удалённо через сеть, файл защищённый через .htaccess она не сможет, так как обращаться будет не к диску удалённого компьютера, а к Web-серверу Apache, который обзательно потребует пароль. Более того, вы даже не сможете прочитать файлы с соседних виртуальных хостов. | |
|
|
|
|
|
|
|
для: cheops
(15.11.2007 в 15:16)
| | Я имел в виду ситуацию, когда Функция file_get_contents() работает в составе скрипта, находящегося на том же сайте, что и защищенная папка. | |
|
|
|
|
|
|
|
для: Владимир55
(15.11.2007 в 15:41)
| | Я понял, что именно это имеется в виду - в этом случае защита не действует - так как .htaccess защищает от внешних посетителей, которые обращаются к серверу через Web-сервер, а не от программного обеспеченья, установленного на сервере - для этого используются UNIX-права доступа и UNIX-пользователи. | |
|
|
|