TomcatとApacheの連携 (Ubuntu)

思い切り参考にしたページの内容丸ぱくりのエントリになってしまった(ノ∀`)
本当はOpenCms構築内の一部として取り入れたかったが、mod_proxy経由での
インストールがうまく行かなかった為にそれもかなわず、かといって
わざわざ撮った画面キャプチャをそのまま打ち捨てるわけにも行かず。

まあ画面キャプチャの羅列でも時には役に立つって昔ばっちゃが
口を酸っぱくして言ってたしね( ・´ω・`)                 ソンナコトイッタコトナイワヨ(・ω・゙)し

参考:
[Ubuntu 11.10] Tomcat と Apache の連携
2.4. 独自の空間台帳システムを構築する   
 <- なんか内容が削除されてる(´・ω・`)?
OpenCms構築の際に参考にしたサイトでもhttpd-proxy.confにLocationを追加してたり
するんだけども、ubuntuのproxy_ajp.confでも同じようなことをすれば連携状態で
インストール出来るんだろうか( ・´ω・`)?


  1. apacheのバージョンを確認

    一応念の為、apacheのバージョンを確認。
    Apache2.0.x系だと連携方法が異なるらしい。

    apachectl -v
    
  2. server.xmlを開く

    tomcatのserver.xmlを開く。
    /var/lib/tomcat6/conf/server.xmlはシンボリックリンクらしい。

    sudo vi /etc/tomcat6/server.xml
    

    調べてみたらconfフォルダ自体がシンボリックリンクなのか(・∀・)
    参考:ハードリンク・シンボリックリンク-シンボリックリンク

     

  3. server.xmlの内容変更
    tomcatのserver.xmlを編集する。
    Port="8080"のセクションをコメント化してポートを閉じる。

    Port="8009"のセクションのコメント記号を除去しポートを開ける。
    そして:wqでファイルを上書き保存する。

    内容変更前というかtomcat再起動前は8080でアクセス出来る.

    関係ないけど80だとapacheの"It works!"が表示される。

    ここでする必要はないけどtomcatを再起動

    8080でアクセス出来なくなる。

     

  4. 8009だったらアクセス出来るのかと思いきやhttpじゃ駄目なのか。
    AJPモジュールが動いている状態でも同じだからそういうことなのかな。

  5. AJPモジュール設定ファイルの作成
    連携を行うAJPモジュールの設定ファイルを新規作成する。

    sudo vi /etc/apache2/mods-available/proxy_ajp.conf
    


     

  6. "ProxyPass /tomcat/ ajp://localhost:8009/"と入力し保存する。

  7. AJPモジュールの有効化
    sudo a2enmod proxy_ajp
    

    でAJPモジュールを有効化する。

    a2enmodってapache2 enable moduleの略か( ・´ω・`)
     

  8. tomcatとapache2の再起動
    sudo /etc/init.d/tomcat6 restart
    sudo /etc/init.d/apache2 restart
    

    でtomcatとapache2を再起動する。

     

  9. アクセス確認
    ホストOS側からブラウザでhttp://ゲストOSのIPアドレス/tomcat/
    へアクセスし、"It works!"と表示されればOK(・∀・)

     

※2016/3/9追記
tomcat7の場合は

sudo shutdown -r now

等でubuntu server毎、再起動しないと駄目?


一応これで連携は出来てるはずだけれども…
この辺はもう少し勉強しないといけないな( ・´ω・`)