2009-08-19 9 views
0

flvプレーヤーをページに埋め込むことを検討していますが、flvファイルをwww以外のアクセス可能な場所から読み取ろうとしています。私は暗号化されたクエリ文字列を受け取り、復号化し、readfile()を使ってページに内容を出力するコントローラアクションを作成しようとしましたが、何も起こっていないようです。phpのプレーヤーに出力されているストリーミングflvを保護する最も良い方法は?

間違ったコンテンツタイプを送信しているか、readfile関数がflvファイルサイズ(40 MB +)で窒息しているかどうかはわかりません。

I'm using something like the following

Goint上記のページに、私はちょうどプレーヤーからそれをストリームではない、FLVの罰金をダウンロードすることができます。前もって感謝します!

答えて

0

これは私が書いたいくつかのアプリケーションに完全にFLVとmp3ファイルをストリーミング:

$mime = ''; // place appropriate mimetype here 
$file = 'somefile.flv'; // place your filename here 

header("Expires: Thu, 19 Nov 1981 08:52:00 GMT"); 
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); 
header("Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0"); 
header("Pragma: no-cache"); 
header('Content-Type: '.$mime); 
header("Content-Disposition: attachment; filename='$file'"); 
header("Content-Length: " . filesize($file)); 
readfile ($path); 
0
  1. ストリーミングのためのPHPを使用しないでください、PHPが持っている、それは時間の実行とメモリの制限です(php.iniの時に設定) 。 1.1。静的コンテンツを提供するためにPHPを使用しないでください。重いので基本的にApacheのパフォーマンスが低下します。
  2. PHPを使用する際には、ポイントツーポイントでジャンプするシークオプションも記述する必要があります。
  3. HTTPプロトコル経由のflvストリーミングにNginx/Lighttpdを使用するか、RTMPプロトコルによるflvストリーミングにRed5/Wowzaを使用することをお勧めします。

    • flv(FLVストリーミング用):

私兼ね備え提案は改造でnginxのを使用することです。

  • Secure Links(ホットリンクからファイルを保護し、リンクごとにTTLを設定するため)。
  • Limit rate after - 帯域幅を節約する。安全なリンクを持つ
  • あなたはIPによって、特定のユーザーのためのリンクを生成することができ、およびリンクが死んでいることをした後、あなたは、60秒間のリンクのTTLを設定することができ、ユーザーが再びコンテンツにアクセスすることはできません。