- 追加された行はこの色です。
- 削除された行はこの色です。
- Tomcat/AJPで80番ポートから接続する へ行く。
- Tomcat/AJPで80番ポートから接続する の差分を削除
*はじめに [#g03d8278] 「AJP」での検索がちょこちょこっとあるようなので軽くまとめてみます。 *AJPとは [#cbfcd354] **AJPがすること [#s33e4ba6] AJP(Apache JServ Protocol)はクライアントがApacheを中継してAPサーバ(Tomcat)にアクセスすることを実現する。 **何が嬉しいのか [#h12fc206] クライアントがAPサーバにアクセスするとき通常次のようなURIを指定する。 http://localhost:8080/Hoge/ このうち「:8080」がポート番号を指定していて、 APサーバは8080番ポートでクライアントからのアクセスを待ち受けていると分かる。 このうち「:8080」がポート番号を指定していて、APサーバは8080番ポートでクライアントからのアクセスを待ち受けていると分かる。 このままサービスを公開するとどうなるか。 -サーバ側は8080番ポートを開けておかなければならない -クライアント側は8080番ポートを指定しなければならない ではどうしたいか。 -サーバ側は80番ポートのみを開けておく -クライアント側はポート番号を指定しない(80番ポートでのアクセス) これを実現するのがAJPである(と僕は理解しています。) *AJPを設定する [#pf801faf] **設定と反映 [#z937613a] 結論からまず。次のファイルを書いて、 -/etc/httpd/conf.d/proxy_ajp.conf ProxyPass /Hoge/ ajp://localhost:8009/Hoge/ httpdをリスタートする。 # /etc/init.d/httpd restart **動作確認 [#h0d25008] ブラウザで次のURIにアクセスする。 http://(ドメイン名)/Hoge/ ドメイン名の箇所はローカルでテストしているのであればlocalhost、 インターネット上に公開しているのであればサーバに割当たっているIPアドレス またはIPアドレスに紐づけているドメイン名を指定する。 ドメイン名の箇所はローカルでテストしているのであればlocalhost、インターネット上に公開しているのであればサーバに割当たっているIPアドレスまたはIPアドレスに紐づけているドメイン名を指定する。 *エラーになる? [#g8d7ea90] 次の原因が考えられる。。 -設定ファイルの記述を間違えている --スラッシュ(「/」)の位置とか -サーバがローカルで通信できていない --localhostがIPv6設定だとダメだとか -TomcatのAJP設定をしていない --デフォルトでAJPを開けているが -バージョンが違っていてそもそもこうではない --Apache2.2とTomcat5.5 *参考 [#ia946e7e] -http://www.oklab.org/apache_tomcat.xhtml -http://suto3.mo-blog.jp/nashita/2007/12/fedora_core_6_a_b6f2.html