TSファイルをApache経由で開こうとしてエラーになった。WindowsMediaPlayerがMPEGだと認識できなったらしい。
ブラウザとApache(HTTPサーバー)はMIMEタイプでファイルの内容をやりとりしている。
PDFがAdobeReaderで開くのはブラウザにMIMEタイプが関係している。
Wordなら application/mswordなどと書いてある。コレを見てブラウザ判断する.
つまり、ブラウザが「WORDファイルキタワー。これはWordにパスだ」と認識してたりする。
ApacheにTSファイルをMPEGだと設定する
この関連づけをサーバー側である程度操作できる。たとえば、TSファイルはビデオだと認識されないことがある。
AddType video/mpeg .ts
書く場所は filesか .htaccess(directory)ディレクティブがよい。
PDFなのにWORDだよ!とか嘘が言えたりする。嘘ついても役に立たないが、Windowsの関連づけで開くのを防げる。このため、MIMEをOctecStreamと答えておけば、ダウンロード&保存ダイアログを出させるとかできて、たまに重宝する。
設定前のヘッダ
takuya@atom:~$ curl -I http://192.168.2.5/epgrec/video/foobar.ts HTTP/1.1 200 OK Date: Wed, 02 Feb 2011 05:49:19 GMT Server: Apache/2.2.16 (Ubuntu) Last-Modified: Wed, 02 Feb 2011 04:29:53 GMT ETag: "10-ada17b30-49b4519b9d90e" Accept-Ranges: bytes Content-Length: 2913041200 Content-Type: text/texmacs #動画ファイルになってない!
設定後
takuya@atom:~$ curl -I http://192.168.2.5/epgrec/video/foobar.ts HTTP/1.1 200 OK Date: Wed, 02 Feb 2011 05:40:58 GMT Server: Apache/2.2.16 (Ubuntu) Last-Modified: Wed, 02 Feb 2011 04:29:53 GMT ETag: "10-ada17b30-49b4519b9d90e" Accept-Ranges: bytes Content-Length: 2913041200 Content-Type: video/mpeg #動画ファイルになった。
動画ファイルになるとメディアプレーヤーのエラーが出なくなる。
通常はならmime magicや初期設定で十分補完してくれるので、AddType設定はいじらなくてイイ。