Mailinglisten-Archive |
On Mon, Jul 29, 2002 at 02:11:09PM +0200, Patrik Breitenmoser wrote: > Hallo zusammen, > > Folgendes Problem: > > Es gibt einen Internen-Bereich auf der Webseite welcher durch Login und > Sessions geschützt ist. > Nun kann der kann man über eine Adminoberfläche Dateien auf den Server laden > welche nur in dem Internen Bereich downgeloadet werden dürfen. Wie kann ich > nun diese Files schützten? am besten du baust ein download-script, das erstmal die session checkt. per url-param uebergibst du einfach den filenamen. das file wird geoeffnet, entsprechende header ( content-type ) gesendet und dann die daten direkt rausgeschoben. koennte so aussehen: <?php require_once ( "common.inc" ); (check_session() || (die("not allowed\n")); (($fn = $HTTP_GET_VARS['filename']) || (die("missing filename\n")); $fn = str_replace ( '../', '/' ); $fn = str_replace ( '//', '/' ); (($fp = fopen ( "$DOWNLOAD_ROOT/$fn" ) || (die("could not open file\n")); (($content_type=mimetype_by_filename($fn)) || (die("coult not detect mimetype\n")); Header ( "Content-Type: $content_type" ); Header ( "Content-Disposition: inline; name=\"$fn\";"); while (!feof($fp)) print fgets($fp, 1024); ... so in der art solltes funktionieren. (in der hoffnung, dass print() auch binaries verkraftet ...) ~-n -- Enrico Weigelt == metux ITS Webhosting ab 5 EUR/Monat. SMS-Versand ab 5 cent. phone: +49 36207 519931 www: http://www.metux.de/ fax: +49 36207 519932 email: contact_(at)_metux.de cellphone: +49 174 7066481 smsgate: sms.weigelt_(at)_metux.de
php::bar PHP Wiki - Listenarchive