Apache/php ホストから .mp3 オーディオをストリーミングする小さなフラッシュ ウィジェットをいくつか作成しました。mp3 ファイルには直接アクセスできず、ブラウザのキャッシュに保存されません。
これを行うには、ホストの mp3 ファイル許可を「所有者: 読み取り/書き込み」 (数値 600) に設定します。これにより、.php ファイルのみが .mp3 を読み取ることができるようになります。
次に、ActionScript から php ファイルにリクエストを送信すると、mp3 がウィジェットにストリーミングされます。(クライアント/ユーザーがブラウザーのキャッシュを調べた場合、mp3 ファイルは期待どおりに見つかりません)
これは、ファイルをストリーミングする php コードです。
<?php
ob_start();
header("Expires: Mon, 20 Dec 1977 00:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
header("Content-Type: audio/mpeg");
@readfile($_GET["file"]);
ob_end_flush();
?>
IIS/ASP.Net を使用してこの動作を再現する方法を知っている人はいますか
1.) Make it so a file is only accessible to a file on the server.
2.) Stream that file using an .ASPX or .ASHX?