У меня есть веб-приложение, которое позволяет пользователям хранить файлы, содержащие конфиденциальную информацию. До сих пор я написал код, чтобы, если они просматривают свои файлы, они просматривают view.php? Id = xx, и проверка выполняется через базу данных, чтобы подтвердить, что им разрешено просматривать указанный файл. В качестве примера, Джон загружает «information.pdf» к папке «загрузке», встречающаяся в «www.mysite.com/uploads», поэтому точный путь к файлу будет «HTTP: // www.mysite.com/uploads/information.pdf ", а в базе данных в этом же файле есть идентификатор, скажем, 2, чтобы он добрался до него через view.php? id = 2.Как хранить конфиденциальные файлы и разрешать доступ только определенным пользователям
Вопрос
Как я остановить любой из только собираюсь точным путем и, глядя на его чувствительный файл?
Что я сделал
Написанный код только разрешить доступ к файлам, если пользователи идут через мой сайт, а не напрямую.
Я рассмотрел рекомендованные вопросы для того же названия, однако не повезло.
Любая помощь была бы принята с благодарностью.
Я дам вам попробовать, спасибо! Должен ли я предоставить этой папке разрешение 777? – sotirios9
Кроме того, как я могу получить доступ к файлу через 'view.php', если он находится за пределами общедоступного каталога? Раньше я бы пошел прямо за ним через http: // www.mysite.com/uploads/file.pdf'? Вместо этого я вам скажу, чтобы найти файл в каталоге '/ home/upload_directory', который находится за пределами каталога'/home/public_html/'? – sotirios9
'/ home/upload_dir' в порядке. В 'view.php' вы получаете доступ по пути к файлу NOT http URL. И при необходимости используйте разрешение 777. Сначала попробуйте сначала. –