* .wav文件在php
问题描述:
中无法正常运行当试图在我们的网络服务器上查看* .wav URL时,数据无法正常传输。* .wav文件在php
我们在php5.10中使用apache2。在apache的重写规则是:
RewriteRule ^(.+)\.(wav)$ /wav.php?wav=$1.$2 [L,NC]
而且从wav.php相关的代码是:
<?php
$image = getPassed("wav");
header('Content-Type: audio/wav');
set_include_path("/");
readfile($image, true);
exit;
?>
这应该返回服务器时server.company.com/任何.wav文件文件路径通过网络浏览器访问。
当试图在firefox或chrome中听取任何* .wav文件(尚未测试其他操作系统)时,插件错误:“未找到位置”。但是,右键单击并选择“将链接另存为”可让用户下载.wav文件。
有什么想法?
编辑:
getPassed是返回从$ _GET或$ _POST
答
我认为你需要一对夫妇更头此功能工作,不是100%肯定,因为我从来没有变量的函数试图流式传输一个文件。
header('Content-Type: audio/wav');
header("Content-Transfer-Encoding: binary");
header("Content-Length: " . filesize($image) ."; ");
header('filename="'.$image . '"; ');
这是值得一试,尝试与这些无论哪种方式。您可能还想尝试一种Content-Type: application/octet-stream;
的内容类型,您可能还想尝试使用readfile_chunked()(php.net上的用户贡献函数)“分块”文件,并查看这可能是否有帮助。
希望它有帮助。
它可让您下载_working_ WAV文件或只是一个具有.wav扩展名的文件? – zneak 2010-07-22 20:54:11
正在工作的wav文件 – Manbeardo 2010-07-22 21:05:05