开发者

How to force the user to download a file, not to view it?

I have 开发者_如何学编程a download page where i have kept musics, pictures, ebooks and etc. Whenever users click at the image it opens it, and same things happen with .pdf files if the user has installed pdf reader on their PC?

I dont want them to open the file but to download it? Any ideas


header('Content-disposition: attachment; filename=NAME_OF_YOUR_FILE');


You have to add a header to force the download.

header("Content-Disposition: Attachment")
header("Content-Disposition: Attachment;filename=FILENAME_HERE")

from http://www.symkat.com/force-download-with-http-headers


With Apache mod_headers:

SetEnvIf Request_URI "([^/]+\.jpg)$" REQUESTED_FILE_BASENAME=$1
SetEnvIf Request_URI "([^/]+\.mp3)$" REQUESTED_FILE_BASENAME=$1
SetEnvIf Request_URI "([^/]+\.pdf)$" REQUESTED_FILE_BASENAME=$1
Header set Content-Disposition "attachment; filename=\"%{REQUESTED_FILE_BASENAME}e\"" env=REQUESTED_FILE_BASENAME

The instructions can be placed inside a .htaccess file which itself must go in the directory containing your media. You use just about any extension. The following line might also help against aggressive plugins:

Header set Content-Type "application/octet-stream" env=REQUESTED_FILE_BASENAME
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜