About
※この記事はセキュリティ度外視の課題専用の内容です。予めご了承ください。
大学の課題でApacheを設定、SSL化し、Apacheと連携させたTomcatからPebbleを起動させたので備忘録です。
Apacheの設定部分やローカルでのSSL化は省略します。
ちなみにSSL化については以下の記事に記載しました。
https://qiita.com/Raluer/items/02b848437844ba3cbb6c
httpd.confの編集
以下のLoadModuleをコメントアウト
LoadModule proxy_module libexec/apache2/mod_proxy.so
LoadModule proxy_ajp_module libexec/apache2/mod_proxy_ajp.so
ファイル末尾に以下の一文を追加
外部のコンフィグファイルに記載したAJP通信用の設定(これから作ります)を読み込み。
Include /usr/local/etc/httpd/extra/httpd-proxy.conf
httpd-proxy.confの編集
ターミナル上で/usr/local/etc/httpd/extra/
にて
$ sudo vim httpd-proxy.conf
するとvimが起動して新規ファイルの作成になるので、以下のコードをコピペする。
<Location /pebble >
ProxyPass ajp://localhost:8009/pebble
Order allow,deny
Allow from all
</Location>
これでApache側の設定はオールオッケー
ここからTomcatを入れていきます。
Tomcatインストール
公式サイトから、好きなバージョンを選んで「Download」を押す。
飛んだページの「Core」の中から「tar.gz」をクリックしてダウンロード。
ルートディレクトリ(~/のところ)にダウンロードしておくと後々楽かも?ぶっちゃけどこでもいいです。
ダウンロードしたtar.gzファイルをFinderから解凍して中を見ます。
「conf」というフォルダがあるので中に入り、server.xmlをお好きなテキストエディタで開きます。
74行目あたりにある以下のコードを、
<Connector executor="tomcatThreadPool"
port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
今回HTTP通信は使わないので、コメントアウトします。
<!--
<Connector executor="tomcatThreadPool"
port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
-->
続いて117行目あたりにある、今回用いるAJP通信用の設定のアドレスを127.0.0.1
に書き換え、secretRequiredを追加し、パラメータをfalseに設定します(ローカルのときのみ!)
<Connector protocol="AJP/1.3"
address="127.0.0.1"
port="8009"
redirectPort="8443"
secretRequired="false" />
ちなみにsecretRequiredを設定しなかったせいで相当ハマりました。
Pebbleの導入
ここまで来たらラストスパート。
まずはPebbleをこのサイトからダウンロードします。
ダウンロード場所が少し分かりづらいですが、右上のPebble 2.6.4をクリックするとダウンロードできます。
ダウンロードしたファイルを解凍し、解凍したフォルダ内にあるpebble-2.6.4.war
を解凍せずにコピーし、先程のTomcatディレクトリに移動し、webapps
直下にペーストします。もともとのフォルダは不要です。中に入ってるwarファイルだけを使います。
warファイルにあとでアクセスするので、pebble.war
にリネームしておきましょう。
TomcatとApacheサーバの起動
ここまで来たらほとんどゴールです。
ターミナルを開き、Tomcatのbin
の中に入ります。
Tomcatのサーバを起動するには、ターミナル上bin
の中で
$ ./startup.sh
のコマンドを打つだけです。ちなみに止めるときは
$ ./shutdown.sh
を同じ場所で実行するだけです。
起動するのを確認したら、そのまま
$ apachectl start
を実行し、apacheサーバを起動します。
ゴール!
Tomcatサーバとapacheサーバがどちらも起動した状態になったので、ブラウザのURLにlocalhost/pebble
と入力すると、少し読み込んだ後にPebbleのWelcomeページが表示されるはずです。
あとがき
非常にハマってしまったので、是非とも参考にしてスムーズに駆け抜けてください…。
ハマった場合のチェックポイント
ポート8009は埋まってない?
埋まってたら適当に別のポート(8019とか)使うと出来ますよ。
server.xmlとhttpd-proxy.confどちらも変更するのを忘れずに!
参考サイト
https://ameblo.jp/g-pinchan-new/entry-11573378743.html
https://qiita.com/brighton0725/items/0e116db637a8fea1d907