Potrebuju stahovani souboru do redakcniho systemu. Problem je v tom, ze kazdy soubor bude pristupny az po zadani hesla. To znamena, ze nelze pri stahovani pouzit klasicky odkaz (nesmi byt videt, odkud se soubor skutecne stahuje, aby nebyl volne pristupny).
Jak to resit?
Napadlo me to poslat pomoci header pres PHP, ale s tim zase maji problemy nektere prohlizece (MSIE 5.5).
Zajimave reseni praktikuji nektere servery a to, ze v URL je dlouhy HASH string. To vsak nevim, jak se resi.
Uz jste se tim nekdo zabyval? Nemate kus funkcniho skriptu pro bezpecne stahovani souboru?
Diky,
map
spatne polozena otazka.
> Napadlo me to poslat pomoci header pres PHP, ale s tim zase maji problemy nektere prohlizece (MSIE 5.5).
takhle obecne receno to je kravina :-)
podivej se na builder.cz a hledej neco o autentifikaci/autorizaci v php.
> takhle obecne receno to je kravina :-)
obecne asi (vlastne snad) jo, ale vim, ze jsem tohle taky kdysi resil (problemy s MSIE, prestoze hlavicky byly IMHO OK, ale MSIE to nestacilo) ale uz nevim jak .... myslim, ze jsem to obesel pres mod_rewrite aby pripona toho skriptu (v prohlizeci) odpovidala typu toho souboru
ale urcite to jde vyresit lepe
aha, uz chapu, jak to pisatel myslel:
asi chtel udelat redirect pres header("Location: ..."), coz vsak _rozhodne_ neni o nic bezpecnejsi, nez uvedeni prime odkazu na dany soubor.
ja to pochopil jako
header("content-type...");
readfile(...);
... s tim MSIE trochu zapasilo
MSIE je pokud vim jediny prohlizec, ktery (nekdy) kasle na MIME a hada to samo z obsahu a tak vubec ... jsou s tim jen problemy
btw: jista verze MSIE6 (tusim po instalaci SP4) ma jakesi problemy s komprimovanym html - nedavno jsem s timhle hodne zapasil (nez jsem prisel na to kde je problem - ono totiz najit chybu kdyz se s ni setkam je hracka, ale kdyz se stava jen v jistych subverzich MSIE6 .... no nic :)
aha...
mno, neni nad sdileni xp vs. 95 :-(((
http://phpatm.free.fr/ - hezky udělanej systém na stahování souborů (a nejen to). Můžeš se z něj poučit...
Jinak, zkus dát do .htaccess Deny from all, ale to je u toho myslim popsaný.