Autor | Zpráva | ||
---|---|---|---|
John_Franco Profil * |
#1 · Zasláno: 25. 1. 2009, 18:18:47
Mám složku, ve které je mnoho souborů, ke kterým mají přístup jen přihlášení uživatelé. Jak mohu udělat, aby se nedala zobrazit opravdová adresa souboru? (stačil by návod v AJ)
Děkuji |
||
AM Profil * |
#2 · Zasláno: 25. 1. 2009, 19:57:35
přes .htaccess zakaž přístup do celé složky (deny from all), a udělej PHP skript:
<?php //do proměnné $nazev nějak získej název souboru a ověř si, že je přihlášený autorizovaný uživatel //... header("content-type:application/octet-stream"); echo file_get_contents("soubory/$nazev"); ?> Je vhodné zkombinovat s mod_rewrite, aby se řekněme název soubory/obrazek.jpg přepsal na stahni.php?s=obrazek.jpg, aby měl stahovaný soubor správný název. Existuje hlavička tuším content-disposition, přes kterou se dá název stahovaného souboru změnit, ale to bohužel není příliš spolehlivé, myslímže IE6 tomu nerozumí a všechny stažené soubory by pojmenovával stahni.php. Mod_rewrite porozumí všechny prohlížeče. |
||
Časová prodleva: 15 let
|
0