phpでflvファイルをflashplayerに配信する方法

このQ&Aのポイント
  • phpでflvファイルをflashplayerに配信する方法についてお尋ねします。
  • flvファイルをURL直叩きで見られなくするために、一旦PHPでセッションを確認してから非公開のflvファイルを読みだしています。
  • PHPのURLにセッションID付きでアクセスすると、ファイルが読みだされるがflashplayerでは再生されず、進捗バーがダウンロード中のままです。
回答を見る
  • ベストアンサー

phpからflashplayerにflvファイルを配信する方法について

お世話になります。 標記の方法についてお尋ねいたします。 flvファイルをURL直叩きで見られなくするために、 一旦PHPでセッションを確認してから ドキュメントルートの外に隠してあるflvファイルを 読みだしています。 PHPのURLにセッションID付きでアクセスすると、 ファイルが読みだされて、 それを保存したものと、サーバ上にあるファイルは 同一であることが確認されています。 しかし、flashplayerからは、再生できず、 進捗バーがダウンロード中のままです。 (FireBugから見ると、ダウンロード自体は正常に終わっています。) この現象について、 何かわかることがあればご教授いただきたく思います。

  • aO_Ob
  • お礼率50% (3/6)
  • PHP
  • 回答数3
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
回答No.3

あまり自身がないですが 検証にXAMPP + JW Playerで試してみました。 そのほかのプレイヤーでもそうだと思いますが、embedタグのflashvars属性などに、「file=xxxxxx.flv」などと設定すると思います。 JW Playerの場合、「file="http://www.example.com/xxxx.flv"」とやってやると該当URLよりFLVを取得し、ロードします。 この際、拡張子が「.php」だった場合、正常に読み込めませんでしたが、mod_rewriteで書き換えを行ってみたところ、ロードしました。 .htaccess--------- <IfModule mod_rewrite.c> RewriteEngine on RewriteRule ^(.*)\.flv$ $1.php [QSA] </IfModule> ------------------ ※私が検証したのは、「hogehoge.flv」というものにアクセスされたら、「hogehoge.php」にリダイレクトというものです。 適時変更してみてください。

aO_Ob
質問者

お礼

domain.com/session_id/path/to/movie.flv を domain.com/GetMovie.php?path=/path/to/movie.flv&SESSID=session_id に書き換えるルールを設定したところ 無事flashplayerから再生することができました。 ありがとうございました。

aO_Ob
質問者

補足

別件でばたばたしており、お返事が遅れて申し訳ありませんでした。 まだ試していませんが、大変有力な情報だと思います。 今日か、来週頭までには試して結果をご報告させていただきます。 ありがとうございました。

その他の回答 (2)

回答No.2

どのように読み出しをしているか、によるのですが、 ドキュメントルート外ということですので、fread関数なりで、出力している前提で話を進めますが、 flvファイルがソレであると判別するためのContent-Typeは送出してますか? 例) <?php header('Content-Type: application/flv'); //flvファイルのコンテントタイプが分からないのでコレは適当です。 ?> また、flvファイルのファイルサイズも通知してないとだめだったりしませんか? 例) <?php $path = 'path/to/hoge.flv'; $size = filesize($path); header('Content-Length: '.$size); ?> もし上記二点、行っていないなら一度行ってみてはいかがでしょうか。

aO_Ob
質問者

補足

$type = 'application/flash-video'; (中略) $size = filesize($absPath); (中略) Header('Content-Type: ' . $type); Header('Content-Length: ' . $size); のようにしています。 'application/flash-video'は、静的なファイルを直接 見に行った時に返されるタイプに合わせています。

回答No.1

はっきりした事は言えませんが、“ドキュメントルートの外”というのが少し気になります、、、。 仮にドキュメントルート内にflvファイルを置いてたらどうなりますか?

aO_Ob
質問者

補足

お世話になります。 ファイルはphpのfread関数で読みだしています。 読みだされるファイルの位置が外から見えるかどうかは 関係ないと考えています。 もちろん、ドキュメントルートの中に入れたファイルに PHPを介さずに直接アクセスすれば再生されます。

関連するQ&A

  • 他人にphpファイルをダウンロードされない方法

    phpソースを第三者に見られたくない場合は、ドキュメントルート以外に設置したほうが良いと本に書いてあったのですが、どのような方法で他人からphpソースを見られてしまうのでしょうか? ドキュメントルートに設置したphpファイルは、FTPやシステム内に不正アクセスされない限りダウンロードされることはないのでしょうか? 手法や防御策等をご教示頂けると幸いです。 宜しくお願い致します。

    • ベストアンサー
    • PHP
  • phpファイルについて

    phpファイル(xxx.php)の<?php ?>で囲われた部分は、外部から読み取られる事は絶対に出来ないのでしょうか? データベースなどの設定(HOST名、データベース名、データベースパスワード)をドキュメントルート内のphpファイルのデータベースクラスに直接記述しています。 これって安全ですか? 一部の参考書等では、重要な設定等は、ドキュメントルートの外にファイルを置いておいて、インクルードする方法が書かれています。 phpファイル(xxx.php)の<?php ?>で囲われた部分が、絶対に外部から読み取られないのであれば、現状のまま運用しようと思っていますが、ご教授下さい。

    • ベストアンサー
    • PHP
  • FLVファイルを再生出来るようにする方法

    CravingExplorer関連で質問している者です。 http://www.vid-dl.net/ ここから保存したいニコニコ動画のURLを貼り、指定したフォルダにダウンロードしたら、FLVファイルがフォルダに入ってました。 これをipod用に変換したいんですが、うまくいきません。 CravingExplorer起動してニコニコ動画で動画を保存、ここからいろいろやってもFLVファイルが再生できる状態になりません。 FLVファイルがフォルダに自分の意思で入れることができたんで、少しは前進したと思うんですが… 前回も質問ばかり申し訳ないんですが…手順を教えて下さい。 回答宜しくお願いします。

  • 公開ディレクトリに置いたphpファイルについて

    こんにちは。 ふと気になったので質問させてください。 ドキュメントルート以下に置いて公開したphpファイルというのは、通常の方法によってブラウザからアクセスするとphpスクリプトの実行結果がクライアント側へダウンロードされますが、 実行前のスクリプトそのものがダウンロードされる事態というのは、どの程度想定してコーディングするべきことなのでしょうか。 例えば、データベースの操作が伴ったりする場合、 もちろんDBのアカウント名等は別のファイルに記述してドキュメントルートより上のディレクトリにおいておくとしても、テーブル名などが容易に見えてしまうとするならばなら、処理部分そのものを別ファイルに記述してドキュメントルートより上のディレクトリに置いた方が良いのか・・・と思ったのですが。 実際のところ、皆様はどの程度の想定で設計していらっしゃるのか、ご教授頂けますと幸いです。 宜しくお願い申し上げます。

    • ベストアンサー
    • PHP
  • YouTubeのget_video?...のFLVファイルを返すURLの調べ方

    YoutubeなどでFLVファイルをダウンロードするときに、flvファイルのURLを ダウンローダーに送る実行ファイルを作りたいのですが、URLを文字列で取得する方法が わかりません。どうすればいいですか?

  • phpファイルを見られないようにするには・・?

    はじめまして。 phpを始めて間もないですが、よろしくお願い致します。 早速質問させて下さい。 htmlファイルにformを書き、 method=post action=test.php で、 phpファイルを実行させました。 test.phpの内容はif文を使った簡単なユーザー判定で、 formからの値の正誤によってlocationで それぞれ別のhtmlページへ飛ばすようにし、 これらをサーバにアップロードしました。 そこで問題点があるのですが、 phpファイルをダウンロードして中身を見ることができます。 直接URLを打ち込んでもたどり着けませんが、 「右クリック」⇒「対象をファイルに保存」などをすると phpファイルをダウンロードできてしまいます。 それを防ぐには、つまり、 phpファイルを見られないようにするには、 どうしたらよいのでしょうか? またphpファイルを使うにあたりセキュリティ上 必ず守るべきことや参考URLなどありましたら、 どうかご教授くださいませ。 よろしくお願いします

    • ベストアンサー
    • PHP
  • flvは途中でファイルが切れていても再生できるのでしょうか。

    flvは途中でファイルが切れていても再生できるのでしょうか。 最近カスペルスキーのウイルス対策ソフトを終了させた時にネットワークの切断の確認画面が出てきて、切断したらその直後にダウンロード中だったflvファイルがダウンロード終了と表示されました。そのファイルは再生ができましたが、メーターのようなものはまだ途中だったのに急にダウンロード終了になったのはなぜでしょうか。

  • FLVファイルのサムネイル表示の方法/Win7

    お世話になります。 Windows7/64bitを使用しております。 ダウンロードしたFLVメディアのサムネイルが表示されるようにしたいのですが。 ネットで検索し、下記URLの内容を参照して試してみましたが、FLVファイルのサムネイルは表示されないままです。 http://mbsupport.dip.jp/mb/youtube_10.htm (なお、コーデックのほうはダウンロードして、MediaPlayerClassicでFLVメディアも観れるようにはなっています) 何か足りないのか、アドバイスのほどお願い致します。

  • FLVファイルがipod用に変換できません…

    毎度お世話になっている者です。 http://www.vid-dl.net/ ニコニコ動画のURLを貼ってダウンロードしFLVファイルを作りました。 http://www.woopie.jp/desktop/ 次にここの変換ソフト使い、FLVファイルをipod用に変換しようとしたんですが、FLVファイルをドラッグさせる場所が見つかりません。 何処からドラックさせて変換するんですか? あと、気づいたらFLVファイルが再生出来るようになってました。 しかし、iTunesにドラッグして入れようとしたら出来ませんでした。 ipod用に変換されなかったんでしょうか?… やっとipod用に変換できたと思ったんですが… これからどうすればいいんでしょうか? こういう質問が多くて申し訳ありません。 諦めきれないので…アドバイス下さい。 回答宜しくお願いします。

  • phpファイルを直接参照できないようにするには?

    phpファイルでMySQLのDBにアクセスし、 contents=aaaaa&title=bbbbb&update_at=ccccc という形でファイルに表示させ、それをFLASHで読み込むということ ができるようになりました。 しかしこのphpファイルのURLをアドレスバーに直打ちされてしまうと、 contents=aaaaa&title=bbbbb&update_at=ccccc が丸見えになってしまいます。 この内容はFLASHを通してのみ参照できるようにしたいのですが、 phpファイルの直打ち参照を防ぐにはどうすればいいでしょうか?

    • ベストアンサー
    • Flash

専門家に質問してみよう