Linux Fedora9での鯖構築
Fedora9 のインストール
「ソフトウェア開発」と「ウェブサーバー」にチェックを入れてインストール。
このマニュアルはこの構成でインストールされたFedora9を前提としています。
SELinuxはpermissiveまたはdisableにしておいてください。
これはApacheとtomcat6を連携してする際に必要な設定です。
準備するもの
以下のファイルを準備してください。
jdkやtomcatが含まれていませんが、Fedora9ではjdk1.6, tomcat6がyumでインストールできます。
ffmpegもfreshrpmのサイトからyumでインストールできます。
tomcat,ffmpeg等はダウンロードして手動でインストールすることも可能ですが、できるだけ手間を省くため、可能な限りyumを使うことにします。
javaのインストール
「ソフトウェア開発」にチェックを入れてインストールした場合、Fedora9にはすでにjavaが入っているようです。
そのバージョンを確認すると、1.6なのでW2Chの動作には問題なさそうです。
#java -fullversion
java full version "1.6.0-b09"
tomcatのインストール
Fedora9ではyumでtomcat6のインストールができます。以下のコマンドでインストールします。
# yum install tomcat6 tomcat6-webapps tomcat6-admin-webapps
インストールが完了したら、tomcat6のサービスの状態を確認します。
以下のコマンドで確認すると、自動起動に設定されていないようです。
# chkconfig --list tomcat6
tomcat6 0:off 1:off 2:off 3:off 4:off 5:off 6:off
chkconfigコマンドを使って、起動時に、tomcat6も起動するように設定します。
# chkconfig tomcat6 on
#chkconfig --list tomcat6
tomcat6 0:off 1:off 2:on 3:on 4:on 5:on 6:off
また以下のコマンドでtomcat6の起動/停止が可能です。
service tomcat6 start tomcat6の起動.
service tomcat6 stop tomcat6の停止.
service tomcat6 restart tomcat6の再起動.
service tomcat6 startを実行し、tomcat6を起動します。
tomcat6が正常に起動した後、ブラウザでhttp://localhost:8080/をアクセスするとtomcatのトップページが表示されます。
次にtomcat6の管理ツールの設定を行います。
これはW2Chには特に必要は無いのですが、管理ツールを使うとtomcatの状態の確認が可能です。
/usr/share/tomcat6/conf/tomcat-users.xmlを以下のように編集します。
追加する記述を赤で表示しています。<user username="admin"のpassword=""の部分はtomcat6の管理者のパスワードになります。
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
<role rolename="tomcat"/>
<role rolename="role1"/>
<role rolename="manager"/>
<role rolename="admin"/>
<user username="tomcat" password="tomcat" roles="tomcat"/>
<user username="both" password="tomcat" roles="tomcat,role1"/>
<user username="role1" password="tomcat" roles="role1"/>
<user username="admin" password="XXXXX" roles="admin,manager"/>
</tomcat-users/>
tomcat6を再起動した後http://localhost:8080/manager/statusをアクセスすると、
JVMバージョン:1.6.0_b09、JVMベンダ:Sun Microsystems Inc.となっていることが確認できます。
W2Chのインストール
必要なjarファイルのインストール
/usr/share/tomcat6/libの中に以下のファイルをコピーします。
crimson-1.1.3-bin.zip中のcrimson.jar
htmlparser1_6_20060610.zip中のhtmlparser.jar
PDFBox-0.7.2.zip中のPDFBox-0.7.2.jar
ffmpegのインストール
ffmpegはfreshrpmsからインストールすることができます。
freshrpmsはyumに対応していますが、Fedora9をインストールした状態では、
yumがfreshrpmsを検索するようになっていません。
freshrpmsを検索できるようにするには、freshrpms-release-1.1-1.fc.noarch.rpmを入手し、インストールする必要があります。
# wget http://ftp.freshrpms.net/pub/freshrpms/fedora/linux/9/freshrpms-release/freshrpms-release-1.1-1.fc.noarch.rpm
# rpm -ivh freshrpms-release-1.1-1.fc.noarch.rpm
次に以下のコマンドを実行して、ffmpegをインストールします。
# yum install ffmpeg
W2Chのインストール
ここからw2chのw2chxxx.warを入手し、w2ch.warにリネームした後/usr/share/tomcat6/webappsにコピーします。
当然複数のバージョンをインストールするのであればリネームは必要ありません。
tomcat6が起動していれば、コピーするだけで自動的にwarファls -lイルが展開され、http://localhost:8080/w2ch/をアクセスすると、W2Chのダウンロードページが表示されます。
apacheとの接続
まずapacheの動作状況を確認します。
# chkconfig --list httpd
httpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off
自動起動になっていないようなので、自動起動するように設定します。
# chkconfig httpd on
# chkconfig --list httpd
httpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
また以下のコマンドでapacheの起動/停止が可能です。
service httpd start apacheの起動.
service httpd stop apacheの停止.
service httpd restart apacheの再起動.
次にapacheとtomcat6の接続を行います。
以下の記述を/etc/httpd/conf/httpd.confの最後に追加します。
以下の記述を追加したら、apacheを再起動して、http://localhost/w2ch/アクセスすると、W2Chのダウンロードページが表示されるはずです。
<Location /w2ch/>
ProxyPass ajp://localhost:8009/w2ch/
</Location>
後はhttpのポート80以外をF/Wでブロックしてインターネットに公開すればOKです。
ffmpegのオプション調整
fedora9にインストールされるffmpegは0.4.9というバージョンのようです。
このバージョンはW2Chのデフォルト設定のオプションで動作しないようです。
web.xmlの設定を以下のように変更してください。
<context-param>
<param-name>ffmpeg-options</param-name>
<param-value>
-y -i $INFILE -vcodec mpeg4 -acodec libfaac -r $FRAMERATE -b $BITRATE $QSCALE -s $SCREENSIZE -vol $VOLUME -ac 1 -ar 16000 -ab $AUDIOBITRATE -f 3gp -ss $START -fs $FILESIZE000 $OUTFILE
</param-value>
</context-param>
<context-param>
<param-name>ffmpeg-b</param-name>
<param-value>1000</param-value>
</context-param>
<context-param>
<param-name>ffmpeg-ab</param-name>
<param-value>1000</param-value>
</context-param>