使用htaccess addhandler将mp3解析为php

使用htaccess addhandler将mp3解析为php,php,.htaccess,Php,.htaccess,我正在尝试使用htaccess中的以下行将mp3文件解析为php: AddHandler application/x-httpd-php5 .mp3 .MP3 目的是运行自动预结束文件 一切正常。但是,在运行auto_prepend_文件后,服务器输出mp3并运行时出现以下错误: Warning: Unexpected character in input: '' (ASCII=23) state=0 i 似乎它正在将mp3文件解析为php。无论如何,我只是告诉服务器将mp3文件当作php处

我正在尝试使用htaccess中的以下行将mp3文件解析为php:

AddHandler application/x-httpd-php5 .mp3 .MP3
目的是运行自动预结束文件

一切正常。但是,在运行auto_prepend_文件后,服务器输出mp3并运行时出现以下错误:

Warning: Unexpected character in input: '' (ASCII=23) state=0 i
似乎它正在将mp3文件解析为php。无论如何,我只是告诉服务器将mp3文件当作php处理,这样我就可以使用auto_prepend_file指令,然后取消php处理

(我不能为此使用mod_rewrite)


问题归结为:是否有一种方法可以在脚本中间取消php解析。因此,在处理之后,mp3将通过以下方式传递?

我会这样尝试:使用mod_rewrite来运行php脚本

RewriteRule (\w+\.mp3)$ phpscript.php?file=$1
在这个脚本中,预先编写所需的内容,然后读取给定的文件并输出它

<?php
$file = $_GET['file'];
include("prependfile.php");

header('Content-Type: audio/mpeg3');
header('Content-Disposition: attachment; filename='.basename($file));
header('Content-Transfer-Encoding: binary');
header('Content-Length: ' . filesize($file));
readfile($file);
?>


您可以重命名mp3文件吗?例如,将foo.mp3重命名为foo.mp3.X,并在其位置放置一个名为foo.mp3的PHP文件?我还使用我的烤面包机熨烫衣服。为什么一个。。。啊,别客气。使用php以您尝试的方式解析mp3很好看。无法重命名mp3文件如果您将二进制文件视为php,它将始终像文本文件一样进行解析和处理,并且php将为无效字符抛出错误。为什么不能使用mod_rewrite?mp3是二进制数据。你不能确定没有与我准备的完全相同的
:D你在哪里快一点+1:)谢谢你,但你需要像问题中那样做。没有修改。对于人流媒体的标题有各种各样的问题。尝试了所有可能的“正确标题”组合,但没有成功。唯一有效的时间是我是否有直接联系。这就是为什么我们想用汽车_prepend@RayS. 您可以使用wireshark或其他任何工具嗅探直接下载的头文件,并使用php执行相同操作。这会奏效的。顺便说一句,我已经在autoprepend脚本中测试了
\uu halt\u compiler()
函数。它不起作用。编译器仅在前置脚本中暂停。在主脚本中,php再次执行,这是一个很好的观点。将不得不继续尝试标题。使用前置脚本似乎不是一个简单的方法。你可以详细说明你想用前置脚本实现什么,也许有人可以建议另一种替代方法。