gar*_*uan 10 php security mp3 http-headers
以与使用php提供图像的相同方式,在CAPTACHAS等中使用,是否可以对音频文件执行相同操作?
我试过这个
<?php
$track = "sometrack.mp3";
if(file_exists($track)) {
header('Content-type: audio/mpeg');
header('Content-length: ' . filesize($track));
header('Content-Disposition: filename="sometrack.mp3"');
header('X-Pad: avoid browser bug');
header('Cache-Control: no-cache');
print file_get_contents($track);
} else {
echo "no file";
}
Run Code Online (Sandbox Code Playgroud)
我正在使用Safari,它可以播放MP3文件.它正在将Safari推入正确的模式,我将Quicktime控件启动几秒钟,然后"无视频".
我想保护文件免受未经授权的下载,以防你想知道我为什么要这样做.
kar*_*m79 14
您的内容处理应该是:
header('Content-Disposition: attachment; filename="sometrack.mp3"');
Run Code Online (Sandbox Code Playgroud)
不知道这是不是问题.我还建议使用readfile输出文件:
readfile($rSong);
Run Code Online (Sandbox Code Playgroud)
此外,使用详尽的Content-Type标头并设置Content-Transfer-Encoding也不会有什么坏处:
header("Content-Transfer-Encoding: binary");
header("Content-Type: audio/mpeg, audio/x-mpeg, audio/x-mpeg-3, audio/mpeg3");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
17379 次 |
| 最近记录: |