Forum Webscript.Ru
Программирование => PHP => Тема начата: ElenaB от 04 Апреля 2003, 12:57:53
-
Во время СЕССИИ по линку на защищенной странице открывается документ word:
Но если user сохранит у себя ссылку на открытый таким образом документ, то он будет открываться.
Можно ли запретить подобное обращение к документу?
-
ИМХО такие документы лучше хранить в папке, недоступной из web
и отдавать их скриптом:
скрипт провряет прохождение авторизации и выдает клиенту файл
-
Каким способом тогда выдать файл
-
ElenaB
сформировать заголовки и послать документ
уже обсуждали неоднократно - ищи в форуме
-
$file=$_GET[\'file\']; // могут множиться кавчки, тогда повырезай их)
heder("location: file:$file");
exit;
P.S. А вообще если уже пользуешся сессией то загоняй в сессию название документа, а потом работай с ним (session_register("file");) без всяких get и post.
А уж если совсем по правилам, отключи регистр глобалс и считывай путь к файлу из сессии через $HTTP_SESSION_VARS[\'file\'];
-
Спасибо!
Буду проробовать эти варианты!
Усли будут еще - будет здорово
-
MrGreeN:
heder("location: file:$file");
Полнейший бред.
ThE0ReTiC имел ввиду вот эти заголовки
http://forums.webscript.ru/showthread.php?s=&threadid=11412&msgnum=1
-
По моему проблема была у ElenaB не в даунлоде файла а в том чтобы обыкновенный пользователь не мог загрузить доку даже зная полный её путь (если без зашёл без аутификации)...
-
MrGreeN понял меня совершенно верно
-
ElenaB
Ну так Макс же и ответил, что делать, только сначала надо на стороне сервера папку или сам файл закрыть от доступа извне...
-
Да, кстати не мешало бы...:)
-
Папка закрыта, а во скрипт не работает
Ошибкку не выдает но и документ тоже
$header.= "Location: file:".$SERVER_NAME."/DOCUMENTS/docun.doc\\n";
$header.= "\\n";
header($header);
-
Ошибкку не выдает но и документ тоже
и не выдаст, т.к. Location в данном случае не сработает, Location просто передает браузеру заголовок, что надо редиректиться, и естественно доступ к закрытой папочке не получает! хотя по идее и должно быть сообщение об ошибке с доступом... в любом случае скрипт тут должен быть абсолютно другой, который будет читать файл в переменную в бинарном режиме и выдавать порциями браузеру... а в нем уже и будет возможно реализовать любую аутентификацию....
-
ElenaB
А если не секрет - зачем это вообще делается?
То есть какова общая задача?
-
Xander
наверное чтоб денег платили перед тем как скачать док файл