yuu_nkjm blog
2012-10-31(Wed) [長年日記] 編集
[openSUSE][Apache][Tomcat] ApacheとTomcatの連携 (ajp版.自分の環境ではjk版より実績あり)
以下は,openSUSE 12.2 (64bit)環境で実行した.
apacheモジュールの追加
yast→ /etc/sysconfigエディタ→ Network/WWW/Apache2 → APACHE_MODULESより "proxy proxy_ajp"を追加する.
ロードされたモジュールを確認する.
# apache2ctl -t -D DUMP_MODULES httpd2: apr_sockaddr_info_get() failed for suse-vbox httpd2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName Loaded Modules: core_module (static) mpm_prefork_module (static) http_module (static) so_module (static) actions_module (shared) alias_module (shared) auth_basic_module (shared) authn_file_module (shared) authz_host_module (shared) authz_groupfile_module (shared) authz_default_module (shared) authz_user_module (shared) autoindex_module (shared) cgi_module (shared) dir_module (shared) env_module (shared) expires_module (shared) include_module (shared) log_config_module (shared) mime_module (shared) negotiation_module (shared) setenvif_module (shared) ssl_module (shared) userdir_module (shared) reqtimeout_module (shared) proxy_module (shared) proxy_ajp_module (shared) Syntax OK
プロキシの設定
"/etc/apache2/conf.d/mod_proxy_ajp.conf"という設定ファイルを作り,プロキシの設定を書き込む.例えば,以下のようにすると."http://hoge.nkjm.info:8080/manager/"でアクセスできるページに"http://hoge.nkjm.info/manager/"でアクセス出来るようになる.
ProxyPass /manager ajp://localhost:8009/manager ProxyPass /app1 ajp://localhost:8009/app1 ProxyPass /app2 ajp://localhost:8009/app2
2012-10-29(Mon) [長年日記] 編集
[Tomcat][Eclipse][XAMPP] Eclipseを使ったJavaサーブレットの開発とデプロイ
書きかけ.
概要
- Tomcatの管理ディレクトリの下に,META-INF,WEB-INF,web.xmlなどを決められた形式で置く.
- 「リクエスト URL] ←→「サーブレット名」←→「クラス名」というマッピング定義をするファイル (web.xml) を設置する.
- 呼び出されるクラスやそれが使うライブラリなどを,classesやlibなど所定の位置に置く.
手順
- "/srv/tomcat/webapps"の下にWebアプリケーションのディレクトリを置く.
/srv/tomcat/webapps/app1 \js \META-INF \WEB-INF \classes \lib web.xml index.html
2012-10-28(Sun) [長年日記] 編集
[ssh] トンネルのトンネルのトンネルの…
図なしだと説明がむずいな.PuTTY使っててSSHを直接使ってるわけでもないし.まあ,メモ程度.
前準備
リモートサーバのポートとグローバルサーバのポートを接続
remote-server.nkjm.infoへログインし,以下を実行.
ssh -R 40022:localhost:22 global-server.nkjm.info
global-server.nkjm.info:40022へのアクセスが,localhost:22(remote-server.nkjm.info)へ転送される.
リモートデスクトップで接続する前に毎回やる
クライアントPCのポートとグローバルサーバのポート接続
クライアントPCからglobal-serverへ接続し,以下のトンネルを作成.
ssh -L 40022:global-server.nkjm.info:40022 global-server.nkjm.info
クライアントPCのローカルポートの40022へのアクセスが,global-server.nkjm.infoの40022へ転送される.
クライアントPCのポートとリモートPCのポートを接続
ssh -P 40022 43389:remote-pc.nkjm.info:3389 localhost
クライアントPCのローカルポートの43389へのアクセスを,remote-pc.nkjm.infoの3389へ転送する.