2010-02-16 148 views
3

我在此服務器上有apache和許多圖像。例如:http://test.com/images/abc.jpg 我想有這種可能性:如果用戶像這樣去url http://test.com/images/download/abc.jpg apache必須添加標頭Content-Disposition: attachment; filename="abc.jpg"。我如何做到這一點?在Apache中添加標頭

+0

你有什麼Apache產品?擁有Apache意味着很多東西,比如Tomcat,James,Geronimo等。 – 2010-02-16 12:18:09

+0

http://httpd.apache.org/ – Leonid 2010-02-16 12:40:25

回答

5

您想要使用mod_rewrite(僞造「下載」目錄)和mod_headers(添加Content-Disposition標頭)的組合。

創建images目錄.htaccess文件:

 
<filesmatch ".*"> 
Header set Content-Disposition attachment env=REDIRECT_force_download 
</filesmatch> 

這將設置每當「REDIRECT_force_download」環境變量設置適當的頭。

創建一個下載目錄,並添加此.htaccess文件:

 
RewriteEngine On 
RewriteRule (.*) ../$1 [L,NC,QSA,E=force_download:1] 

這將任何圖像請求重定向到父(圖像)的目錄,同時增加了「REDIRECT_force_download」環境變量將觸發報頭指令以上。