簡體   English   中英

PHP強制在移動瀏覽器上下載

[英]php force download on mobile browsers

我正在嘗試使用php強制下載圖像文件(例如jpg)。 所以我在這里有一個腳本force.php ,這是代碼:

header("Pragma: public"); // required
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Cache-Control: private",false); // required for certain browsers
header('Content-Description: File Transfer');
header("Content-Type: image/jpeg");
header('Content-Length: ' . filesize($file));
header('Content-Disposition: attachment; filename=test.jpg');
readfile($file);

現在問題出在某些瀏覽器(尤其是手機瀏覽器)上,它將正常運行並提示test.jpg供用戶保存。 但是,在某些瀏覽器上,它將提示force.php下載。 有什么辦法嗎?

謝謝!

內容配置標頭高度取決於特定瀏覽器的實現方式。 有時存在編碼問題(我看不到您的情況)。

HTTP內容處置測試案例中的文檔顯示了各種瀏覽器的行為。

為了安全使用移動瀏覽器,您應該考慮使http請求的最后一部分等於附件的實際文件名,例如http://some.url/download/test.jpg

使用apache mod_rewrite或類似方法將此類請求路由到您的下載腳本。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM