关于网友提出的“请教header强制下载的问题”问题疑问,本网通过在网上对“请教header强制下载的问题”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:
问题:请教header强制下载的问题
描述:
本帖最后由 zyszzz 于 2016-04-21 17:13:12 编辑
phpheader强制下载
新手不才,研究好久不知如何解决,恳请前辈解答。
$file = 'http://tsmusic24.tc.QQ.com/105588684.mp3';
$name = 'title';
header("Content-Type: application/force-download;");
header('Content-Type: audio/mpeg');
header('Content-Disposition: attachment; filename='.$name.'.mp3');
readfile($file);
exit();
?>
报错信息:readfile(http://tsmusic24.tc.QQ.com/105588684.mp3): failed to open stream: HTTP request failed! HTTP/1.1 400 Bad Request
浏览器可正常访问该链接,使用header却无法强制下载,尝试curl访问,取得400状态码。
解决方案1:
没有部分代码,就是直接复制你那段代码而已,就能下载了,所以你不用检查代码问题,从其他问题下手,比如是不是服务器的某些函数库没开,或者php下载的配置等等
解决方案2:
把你的代码运行在我的本地,完全没问题,直接下载了MP3文件。
解决方案3:
我机子试过,可以,不管在本地还是正式域名可以,是配置问题吧
解决方案4:
你用文本编辑器打开下载后的 title.mp3,就可看到只是些错误信息
纠正了那些错误后才能得到正确的结果
$file = 'http://tsmusic24.tc.QQ.com/105588684.mp3';
readfile($file);
Warning: readfile(http://tsmusic24.tc.QQ.com/105588684.mp3): failed to open stream: HTTP request failed! HTTP/1.1 400 Bad Request
in .....
解决方案5:
楼上的都不要胡说!这也是下载?

203个字节就是 MP3?
以上介绍了“请教header强制下载的问题”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/948785.html