3 回答

TA貢獻1818條經(jīng)驗 獲得超8個贊
請分別查看FilesMatch和Files的文檔。它明確指出
本節(jié)中給出的指令將應(yīng)用于具有與指定文件名匹配的basename(filename的最后一個組件)的任何對象。
這意味著在您的示例中它匹配file.pdf。你的第二個例子*.*匹配file.pdf,但你的第一個例子.*uploads/documents.*沒有。它實際上永遠不會匹配,因為它包含一個斜杠,用作目錄分隔符。
如果可以編輯apache配置
您應(yīng)該在指令中附上<Files *.*>或<Files *.pdf>(取決于您要強制下載的內(nèi)容)Location:
<Location "/uploads/documents/">
<Files *.*>
ForceType application/octet-stream
Header set Content-Disposition attachment
</Files>
</Location>
如果你不能編輯apache配置
不幸的是,.htaccess文件中不允許使用Location指令。只需在/uploads/documents/目錄中創(chuàng)建一個.htaccess即可。

TA貢獻1780條經(jīng)驗 獲得超1個贊
搜索更多信息,找到此代碼:
<FilesMatch "\.(mov|mp3|jpg|pdf|mp4|avi|wmv)$">
ForceType application/octet-stream
Header set Content-Disposition attachment
</FilesMatch>
為我工作。

TA貢獻2041條經(jīng)驗 獲得超4個贊
如果您不使用- 文件名,此代碼是完美的 !
例如,對于name-1.mp3,請更改為name1.mp3
<FilesMatch "\.(mp3|avi)$" >
ForceType application/octet-stream
Header add Content-Disposition "attachment"
</FilesMatch>
清除瀏覽器并進行檢查。
添加回答
舉報