iOS5モバイルSafariは、PHPを使用してmp3を提供

私は働くバンドを行進するためのサイトを主催しています。私は完全に機能しているメンバーセクションにログインしています。私はホット/ダイレクトリンクから私のmp3sを保護する.htaccessフォルダを持っています。 Safari、Chrome、Firefoxで再生するファイルを取得できますが、iPhoneでは再生できません。

私は、コンテンツを提供するためにhtml5オーディオタグを作成するPHPファイルのヘッダーを使用してコンテンツを提供しています。私は成功してPHPでreadfile()を試してみました。

PHPファイルは以下の通りです:(セキュリティチェックを外した)

$_GET['f'] = "privatefolder/" . $_GET['f'];
$filename = $_GET['f'];
$filesize = @filesize($filename);

$len = strlen( $filename );
$shortlen = $length - 1;
header( 'Content-Range: bytes 0-'.$shortlen.'/'.$len);

header("Last-Modified: ".filemtime($filename));
header("Content-Transfer-Encoding: binary"); 
header("Content-Type: audio/mpeg");//mpeg
header("Etag: W5M0MpCehiHzreSzNTczkc9d");
header("Content-Description: {$filename}");
header("Content-length: {$filesize}");
header("Content-Disposition: filename=button.mp3");
header("X-Pad: avoid browser bug");
header("Cache-Control: no-cache");
header("Connection: close");

echo "

このコードはすべての主要なブラウザでうまく機能しますが、私のiPhoneでは、モバイルSafariはロックして、ページを開くときにクラッシュします。

私は何が欠けていますか?私はそれがヘッダの問題であり、quicktimeが "ダウンロード/ストリーム"する方法であると仮定しています。私は2週間これを戦っている、私が見つけることができるすべてのソリューションを試してみました!助けてください!!!

*ちょっとしたメモ:私はOpera Mini Browserでページを開いて、サファリにリンクを送信して問題のないクイックタイムで再生しますか?!?!?私はそれが可能であることを知っている!

2

2 答え

それはiOS4で動作し、iOS5で失敗します。 私は拡張機能がmp3として動作するように "mp3"でなければならないと思います...

1
追加された

ヘッダーを送信することはできません。ヘッダーは mp3 ファイルのように見え、HTMLも同時に挿入できます。私はそれがどんなブラウザでも動作することに全くショックを受けています。

Your HTML should be something like where mp3.php has the headers and outputs the contents of the mp3 file.

0
追加された
返信いただきありがとうございます!私はもともとそれをそのように試みましたが、何らかの理由でそれは仕事をしませんでした。キャッシュをクリアしてSafariを再起動して動作させる必要があるようです。だから私はここにいます。その方法はSafariとChromeではうまく動作しますが、Firefoxではうまく動作しません。 リンクのテストモバイルSafariでは、ファイルを読むことはできません。私は本当にFirefoxにはあまり関心がありません。私は通常、これらのファイルのダウンロードを強制的に学生に強制しますが、実際には本当にこれがiPhoneのMobile Safariで動作したいと思っています。何か案は?
追加された 著者 JazzyB,
PHP - 日本のコミュニティ [ja]
PHP - 日本のコミュニティ [ja]
4 参加者の

このグループではPHPについて話します。 パートナー:kotaeta.com