Autor Zpráva
John_Franco
Profil *
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 *
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.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: