それで正直な話、こっちのエントリは今回のエントリへの布石です。
というわけで上記エントリの環境構築が既に終わっているものとして話を進めます(笑)
まず最初にApache::MP3モジュールをインストールしますが、Apache::MP3はAPANには登録されてないためCPAN経由で次のようにしてインストールしてください。
(コマンドプロンプトから)なお、ここで初めてCPANを使う場合、初期設定をしなければいけませんが、上記エントリでの設定が完了していればほとんど[Enter]キーを押しているだけでインストール出来ます。
C:\>perl -MCPAN -e shell
cpan>install Apache::MP3
ただし、地域を尋ねられたときだけ「2(ASIA)」→「4(Japan)」を選択して、その次にURLが並んだ質問で「1 2 3 4 5 6 7」と1〜7までスペース区切りで入れてやればセットアップが完了します。
で、うまくいけばインストールが完了して「C:\Perl\site\lib\Apache」に「MP3.pm」というファイルが出来上がりますので確認してください。
しかし、このままでは動かないですし日本語ファイル名も全く扱えないので、これに私が適当に作成したPatchを当てます。
まず、MP3.pmは読み取り専用属性が付いているので、MP3.pmを右クリックしてメニューから「プロパティ」を呼び出して「読み取り専用」のチェックボックスを外してください。
次にWindowsにはpatchコマンドが無いため、
次に↓のpatchファイルへのリンクを右クリックして「対象をファイルに保存」で「C:\Perl\site\lib\Apache」に保存してください。
MP3.pm.win32_jpn.patch
c:\>cd C:\Perl\site\lib\Apacheを実行して、
C:\Perl\site\lib\Apache> patch -b .org < MP3.pm.win32_jpn.patch
と表示されれば無事パッチ完了です。Hmm... Looks like a new-style context diff to me... The text leading up to this was: -------------------------- |*** MP3.pm.org Mon Oct 14 12:21:56 2002 |--- MP3.pm Tue Jun 8 16:58:50 2004 -------------------------- Patching file MP3.pm using Plan A... Hunk #1 succeeded at 10. Hunk #2 succeeded at 57. Hunk #3 succeeded at 73. Hunk #4 succeeded at 181. Hunk #5 succeeded at 261. Hunk #6 succeeded at 350. Hunk #7 succeeded at 384. Hunk #8 succeeded at 405. Hunk #9 succeeded at 478. Hunk #10 succeeded at 522. Hunk #11 succeeded at 540. Hunk #12 succeeded at 590. Hunk #13 succeeded at 636. Hunk #14 succeeded at 709. Hunk #15 succeeded at 720. Hunk #16 succeeded at 1005. Hunk #17 succeeded at 1057. done
もし表示されなかった場合は、残念ながらCPANに登録されているApache::MP3自体のバージョンが上がってしまったようです。
すみませんががんばって手でパッチ当ててください(^^;
次に、今当てたパッチを正常に動作させるために必要なモジュールをインストールします。
こちらはAPAN経由でインストール出来ますので、コマンドラインから次のようにコマンドを打ってください。
C:\> ppm3 install 'ShiftJIS::CP932::MapUTF'これで必要なモジュールは全てインストール完了です。
次にApacheの設定ファイルを編集します。
「C:\Program Files\Apache Group\Apache2\conf\httpd.conf」を開いて、次の設定を設定ファイルの最後に追記してください。
あと、現状では画面表示に使うアイコンが無いので、AddType audio/mpeg .mp3 .MP3 AddType audio/playlist .m3u .M3U AddType audio/x-scpls .pls .PLS AddType application/x-ogg .ogg .OGG Alias /music "C:/あなたのMP3ファイルの置き場" <Location /music> SetHandler perl-script PerlHandler Apache::MP3 PerlSetVar AllowDownload No PerlSetVar AllowStream Yes </Location>
C:\> cd p5-Apache-MP3-3.04.tgzをダウンロードしたフォルダ等として展開して、出てきたshareフォルダの中にある「apache_m3」フォルダを「C:\Program Files\Apache Group\Apache2\htdocs」に移動させてください。
C:\xxx> tar zxvf p5-Apache-MP3-3.04.tgz share/apache_mp3
この状態でapacheを再起動させて、ブラウザから「http://127.0.0.1/music」にアクセスし、無事MP3のリストが表示されれば設定完了です。
あとは権利的に問題の無い範囲で煮るなり焼くなり好きにしてください(笑)
それから自作パッチ版Apache::MP3の制限として次のようなものがあります。