何となくJSPを書いてみたいなと思ったんで勢いでテスト環境構築.
# portinstall www/tomcat6 (中略) ===> diablo-jdk-1.5.0.07.01_8 : Because of licensing restrictions, you must fetch the distribution manually. Please access http://www.FreeBSDFoundation.org/cgi-bin/download?download=diablo-caffe-freebsd6-i386-1.5.0_07-b01.tar.bz2 with a web browser and "Accept" the End User License Agreement for "Caffe Diablo 1.5.0". Please place the downloaded diablo-caffe-freebsd6-i386-1.5.0_07-b01.tar.bz2 in /usr/ports/distfiles. Please open http://java.sun.com/javase/downloads/index.jsp in a web browser and follow the "Download" link for "JDK US DST Timezone Update Tool - 1.3.0" to obtain the time zone update file, tzupdater-1_3_0-2007h.zip.
おぉ,こんなことあるんですか.仰せのままにします.
# lynx http://www.FreeBSDFoundation.org/cgi-bin/download?download=diablo-caffe-freebsd6-i386-1.5.0_07-b01.tar.bz2 # mv diablo-caffe-freebsd6-i386-1.5.0_07-b01.tar.bz2 /usr/ports/distfiles
JDK US DST TImezone Update Toole - 1.3.0に関してはRegisterとかが必要でめんどくさい.とりあえずローカルに落としてscpでサーバにアップした.場所はさっきと同様 /usr/ports/distfiles.そして改めて portinstall www/tomcat6 を実行.今度はコンパイル通りました.
次にApache Antのインストール.
# portinstall devel/apache-ant
もし環境変数JAVA_HOMEが設定されてて下記の様なエラーが出る場合はとりあえずunsetコマンドで環境変数削除しておく.
apache-ant-1.7.0_1: Environment error: "JAVA_HOME" should not be defined. *** Error code 1
ApacheとTomcatの連携を行うにはApacheのmod_proxyを諸々使わないといけないので,apache22をWITH_PROXY_MODULES=yesとしてmake reinstall.
次に諸々の設定をする.まず .bashrc に環境変数を設定する.
export JRE_HOME=/usr/local/diablo-jdk1.5.0 export CLASS_PATH=$JAVA_HOME/lib/tools/jar export ANT_HOME=/usr/local/ant export ANT=/usr/local/bin/ant
次にhttpd.confの設定.
LoadModule proxy_module libexec/apache22/mod_proxy.so LoadModule proxy_ajp_module libexec/apache22/mod_proxy_ajp.so <Location /examples/> ProxyPass ajp://localhost:8009/examples/ </Location>
とりあえずこれでTomcat動かして, http://localhost/examples/ に接続してサンプルが動けばOK.
# /usr/local/apache-tomcat6.0/bin/startup.sh # lynx http://localhost/examples/
今度は外部からブラウザでhttp://SERVER_IP/examples/ を見てみたら動いてました.やったね.あとは自動起動するように設定をするだけ.
# emacs /etc/rc.conf tomcat60_enable="YES" apache22_enable="YES" htcacheclean_enable="YES"