![]() |
Как не дать никому поставить линк на файл, лежащий на моем сайте?
Т.е. мне нужно чтобы можно было загрузить файл только зайдя на страницу "доунлоад.хтм" и кликнув там на линк "доунлоад".
Чтобы пользователь не мог использовать прямой линк на файл (например зип-архив). |
держи файлы в базе, и отдавая их пользователю проверяй referrer... вообще - проверяй все, что только сможешь придумать :)
|
Referer защитит только от чайников.
|
умный, да?
тогда поясни ему как он может использовать сессии для защиты своих ссылок :rolleyes: |
Сессии он тоже не может использовать. Могу даже объяснить -- почему. Я для этого достаточно умный. :)
|
А вот что-то типа этого пойдет?
Код:
$files=array( file1.zip', 'file2.mp3'); |
Защита от чайника.
Профи запросто подставит тебе любой REFERER, какой сочтет нужным. |
а что если при открытии download.php?filename=filename.zip генерить что то типа filename.zip|suparandomid и хранить его куда нить, ссылку же делать в виде fetchfile.php?id=randomid, и при скачивании запись типа *|* мы удалим. таким образом не посетив download.php человек хрен стянет filename.zip. поставив же ссылку, он тоже обломается, потому что рандомид мы сикспирим через полчаса к примеру.
достаточно помоему надежно.... аль нет? |
Общий принцип: нельзя доверять данным, которые передал пользователь.
Соответственно универсального механизма нет в принципе. Можно подобрать пригодный механизм для конкретного случая -- и перечисленные методы каждый по-своему работоспособны. Но автор треда не указал настоящую цель, которую он хочет достичь. Соответственно, нет смысла угадывать. |
Crazy
Подскажи тогда что-либо пожалуйста. Wave Как мне кажется достаточно надежно... но хз. В принципе мне особенно и не нужно от сильно искушенных людей защищаться, просто чтобы кто попало ссылку на файлы не ставил... |
| Часовой пояс GMT +4, время: 23:25. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.