2014-01-07 57 views
3

問候。如何爲「Content-Disposition:inline;」設置文件名android設備上的文件?

有一個後面的首部集我用它來處理文件被在瀏覽器窗口中打開內嵌(通常是PDF):

header("Content-Type: " . $mime[$ext]); 
header("Content-Disposition: inline; filename=" . $path_parts["basename"]); 
header("Content-length: $fsize"); 
header("Cache-control: private"); 

這段代碼放在的download.php文件來實現額外的步驟在文件實際拋到客戶端之前完成。如果uri文件被設置爲像這樣得到變量:

http://sitedotcom/download.php?=file=path-to-file.pdf 

並且問題如下。桌面在瀏覽器窗口中以內聯方式打開文件,但android設備將其下載並將文件名設置爲download.php而不是path-to-file.pdf。這會導致誤解,並尋求幫助。

有沒有辦法設置標題,以便文件獲取正確的名稱?

回答

0

也許你可以使用Apache模塊重寫這樣的:

<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteRule ^pdf/([^/\.]+)$ download.php?file=$1 [L] 
</IfModule> 

用戶會問:

http://sitedotcom/pdf/path-to-file.pdf 

和PHP將處理URL

http://sitedotcom/download.php?file=path-to-file.pdf 

所以當文件將被保存時,它將在「path-to-file.pdf」下

相關問題