PHP 设置 header 强制直接下载文件的方法
有时候当我们要让用户下载一些文件的时候,尤其是图片或者视频文件的时候,会遇到文件直接在浏览器打开预览而没有开始下载的情况。这种情况我们可以考虑通过一些设置来进行强制下载。
首先如果是通过 a
超链接进行下载的话,可以将其进行如下设置
<a href="123456.mp4" download>
<a href="123456.mp4" download="234567.mp4">
这样就不会在新页面打开,而是直接进行下载了。如果使用 PHP 进行输出的话,那么我们可以通过 header
函数进行设置:
@header('Content-Disposition: attachment, filename="文件名"');
这样打开的页面就会直接进行文件下载而并非预览,当然我们也可以通过设置 Content-Type
和 X-Content-Type-Options
对下载进行更进一步的操作:
@header('Content-Type: application/octet-stream');
@header('Content-Disposition: attachment, filename="文件名"');
@header('X-Content-Type-Options: nosniff');
版权属于:江筱雨
本文链接:https://www.yuisblog.com/archives/245/
本站未注明转载的文章均为原创,并采用
CC BY-NC-SA 4.0 授权协议,转载请注明来源,谢谢!