forţare download prin .htaccess

Discuţii despre serverele web pe care poate rula PHP: Apache, Internet Information Server (IIS), nginx, lighttpd.

Discuţii despre cloud computing: Amazon Web Services, Azure, Google App Engine, Cloudflare

Moderator: Moderatori

johnutz
Senior Member
Mesaje: 956
Membru din: Mar Iul 20, 2004 9:23 am
Localitate: Între scaun şi tastatură

forţare download prin .htaccess

Mesajde johnutz » Sâm Mar 11, 2006 9:05 am

Salutare,

Aş avea nevoie, pentru toate fişierele dintr-un director, să fac să apară dialogul de "save file"...

După mintea mea, asta s-ar face dacă îl conving pe Apache să dea pentru toate fişierele de acolo un header de genul Content-Type: application/force-download, şi / sau Content-Disposition: attachment; filename="numelefisierului".

M-am uitat la directiva AddType, dar nu pot să îi înşir toate extensiile posibile...
Vreau să meargă pentru orice extensie..

Mulţumesc..


asta e de cand eram tanar :P

carco
Senior Member
Mesaje: 2799
Membru din: Joi Mai 27, 2004 4:36 pm
Localitate: Bucuresti
Contact:

Mesajde carco » Sâm Mar 11, 2006 12:43 pm

Pai de ce AddType si nu ForceType application/octet-stream intr-o sectiune <Files *.*> sau <Directory /path/to/dir>?
Programator cu experienta in Magento/ZF, Typo3/Flow3, Symfony, B2B, CRM, ERP, SMB... vand betoniera

johnutz
Senior Member
Mesaje: 956
Membru din: Mar Iul 20, 2004 9:23 am
Localitate: Între scaun şi tastatură

Mesajde johnutz » Sâm Mar 11, 2006 10:29 pm

Ştiam eu că trebuie să fie ceva cu *Type, şi la o frunzărire superficială a manualului, am dat de AddType..

Merci, într-adevăr, merge!
Dar mai e o problemă: la fişierele cu extensia php îmi da tot Content-Type: text/html.
Ca să nu fie rulate pe server, am pus un php_flag engine false în .htaccess.

De aici aş putea să trag concluzia că problema poate fi mult mai complicată decât am presupus la început:
Serverul ăla are şi suport de Perl, şi cred că şi ASP.. Cum să fac să le dezactivez şi p-alea?
(Da, întrebarea e pusă nasol, cred că mai bine fac cu readfile() sau asemănător)
asta e de cand eram tanar :P

johnutz
Senior Member
Mesaje: 956
Membru din: Mar Iul 20, 2004 9:23 am
Localitate: Între scaun şi tastatură

Mesajde johnutz » Sâm Mar 11, 2006 11:08 pm

Am rezolvat cu Content-Type pentru php-uri, cu setarea default_mimetype. .htaccess-ul meu arată acum cam aşa

Cod: Selectaţi tot

php_flag engine false
php_value default_mimetype application/octet-stream
ForceType  application/octet-stream

Interesant faptul că, deşi am dezactivat parser-ul de php (php_flag engine false), default_mimetype are totuşi efect! Explicabil, nu?
asta e de cand eram tanar :P


Înapoi la “Servere Web”

Cine este conectat

Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 3 vizitatori