У меня есть каталог файлов, в которые пользователи, подключенные к сети, могут загружать и получать доступ. Некоторые из файлов являются общедоступными, а другие частными – только для внутреннего доступа. Имена файлов и параметры доступа сохраняются в базе данных.
Может ли кто-нибудь дать мне некоторые ресурсы или показать мне пример того, как я могу использовать данные сеанса (и .htaccess?), Чтобы разрешить доступ к приватным файлам только авторизованным пользователям?
Я думаю, что было бы проще хранить публичные документы в отдельном незащищенном каталоге, хотя я бы хотел сохранить все вместе.
Меня не интересуют безопасность или шифрование на верхнем уровне, поскольку файлы не очень чувствительны, но я хочу, чтобы они не индексировались в поисковых системах и т. Д.
благодаря!
Я полагаю, что я не использовал бы .htaccess (или любую HTTP-аутентификацию) для этого: .htaccess / .htpasswd отличные, когда вы хотите разрешить / запретить доступ к целой директории, а не к определенным файлам.
Вместо этого я бы:
.htaccess
, содержащий Deny from All
Преимущество заключается в том, что ваш PHP-скрипт имеет доступ к БД, что означает, что он позволяет пользователям входить в систему, выходить из системы, использовать сеансы, …
О «отправке файла с PHP», вот несколько вопросов, которые могут принести некоторый свет:
Я бы создал пользовательский индексный скрипт в PHP – то, что отображало бы файлы динамически. Используйте это, чтобы сохранить только нужные файлы, а затем, чтобы дополнительно защитить файлы, загружать содержимое файла динамически – ссылки Pascal MARTIN показывают, как использовать PHP для управления потоковой передачей файлов, вы можете использовать это для блокировки доступа из скрытых файлы пользователям, которые не должны добираться до них.