- ベストアンサー
HTTPヘッダーをプログラム内で出力
HTTPヘッダーをプログラム内で出力するphpスクリプトを作りたいです。 例えばホームページ上で <object width="XXX" height="XXX" classid="XXX"> <param name="FileName" value="http://XXX.XXX/aaa.wmv"> </object> とあったときこのままでは読み込んだデータがキャッシュに残ってしまいます。 そこで http://XXX.XXX/aaa.wmvを http://XXX.XXX/php/XXX.php?file=XXX/aaaにしたときに 読み込めるurlをhttp://XXX.XXX/aaa.wmvに変換するphpスクリプトがあればキャッシュには残らないようです。 このXXX.phpを作りたいのですが、どう作ればいいでしょうか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
PHPはheader関数でヘッダーを出力することができます。 質問の意味がいまいちよくわからないのですが http://XXX.XXX/php/XXX.php?file=XXX/aaaの際に環境変数fileに記述されたURLにジャンプさせたいのでしたら以下のようなスクリプトで実現できます。 <?php header("Location: " . $_GET['file']); exit; ?> header関数については参考URLを参照してください
その他の回答 (2)
- yambejp
- ベストアンサー率51% (3827/7415)
<param name="FileName" value="http://XXX.XXX/aaa.wmv"> を <param name="FileName" value="http://XXX.XXX/stream.php?file=aaa.wmv"> として、以下の様に処理するのではどうでしょうか? <?PHP $f=$_GET["file"]; if (file_exist[$f]){ //必要であれば$fのファイル名からheaderを生成 readfile($f); } ?>
補足
回答ありがとうございます。 やってみましたが、動画ファイルの読み込み自体できませんでした。 phpファイルを1度も作ったことがないので何が悪いのかわかりません。
- bob_n
- ベストアンサー率35% (610/1732)
PHPのことは詳しくないので、見当違いだったらすみません。 ASXなどのメタファイルにするといいとおもいますが、... http://www.mecha.ne.jp/~homa3151/tech/tech1.html
お礼
回答ありがとうございます。 動画の数が多いのでasxに変換するのはちょっと無理そうです。
お礼
回答ありがとうございます。 そのようにやってみたらできました。 が、キャッシュを見てみると残っていました。 phpファイルに何か加えてキャッシュが残らないようする方法はないでしょうか? 実際にキャッシュに残らず再生させているサイトがあります。 サーバも普通のレンタルサーバなのでphpスクリプト次第だと思います。