QA@IT
«質問へ戻る

4
本文
 
 3.ActionFormでPostした値が受け渡せない。
 
+4.開発環境では1つしかないJSESSIONIDがサーバでは複数存在する。
+  画面上でAjaxを実行している為かもしれませんが。。
+
 ```
 
 ```

標準的なAJP連携(Apache2.2+Tomcat6)のドメインルート設定について

度々、すみません。以前、質問させていただいたものです。

下記でそれぞれ、ご回答頂いたのですが、私の対処の仕方の考え方が根本的に間違っているのか、動作不備が起こります。

 ①Apache2.2とTomcat6のドメインルート設定
   http://qa.atmarkit.co.jp/q/3216?_nid=2073
 ②ApacheのRewriteRuleで除外URLを設定したい
   http://qa.atmarkit.co.jp/q/3223?_nid=2082

やりたい事は単純で、ローカルの開発環境で動作しているwarをサーバ環境であるルートドメインに動作させる事です。
正直、こんなにはまるとは思っていませんでした。。

アプリのルート: app
開発環境URL: http://localhost:8080/app/
サーバーURL: http://xxxx.com/
で同じ様に動作させたい!

上記の対応(下記、Apache側の設定)で、現状、動作上不備が確認できたのは、以下の点です。

1.JSP2.0タグを使うと、アプリのルート(app/)が出力され、相対パスがずれる。
 ①に該当。=> Rewriteで常に「 /app/ → / 」と書き換えればる事で対応。
        ※jsessionIdが付与される問題はカスタムタグを作成して対応。

2.Ajaxでパラメータが受けわたらない。
 ②に該当。=> AjaxのURLが「/app/ajax/xxxxx」と形式が決まっており、
        アドレスバーにもURLは表示されないので、除外する事で対応。

3.ActionFormでPostした値が受け渡せない。

4.開発環境では1つしかないJSESSIONIDがサーバでは複数存在する。
  画面上でAjaxを実行している為かもしれませんが。。

@Apache側の設定

●httpd/conf/httpd.confの編集。
<IfModule mod_proxy_ajp.c>            ←Ajax通信用に設定。
 <Location /app/>
  ProxyPass ajp://localhost:8009/app/
 </Location>
</IfModule>

<IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$
 RewriteRule ^/app/(.*)$ /$1 [R]         ←JSP2.0タグ用に設定。
 RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$  ←Ajax通信用に除外設定。
</IfModule>
Include conf/extra/httpd-proxy.conf

●httpd/conf/extra/httpd-proxy.confの編集。
ProxyPass        / ajp://localhost:8009/app/   ←ドメインルート用に設定。
ProxyPassReverse / ajp://localhost:8009/app/
ProxyPassReverseCookiePath / /app/         ←Cookie用に設定。

一般的に本番環境では「ルートドメイン」となるWEBアプリは多いと思いますが、Apacheではどのように設定されているのでしょうか?上記、私が考えた対処法は普通ではないのでしょうか?

度々、同じ様な質問ばかりして申し訳ありません。
ご教示いただければ幸いです。

度々、すみません。以前、質問させていただいたものです。

下記でそれぞれ、ご回答頂いたのですが、私の対処の仕方の考え方が根本的に間違っているのか、動作不備が起こります。

```
 ①Apache2.2とTomcat6のドメインルート設定
   http://qa.atmarkit.co.jp/q/3216?_nid=2073
 ②ApacheのRewriteRuleで除外URLを設定したい
   http://qa.atmarkit.co.jp/q/3223?_nid=2082
```

やりたい事は単純で、ローカルの開発環境で動作しているwarをサーバ環境であるルートドメインに動作させる事です。
正直、こんなにはまるとは思っていませんでした。。
```
アプリのルート: app
開発環境URL: http://localhost:8080/app/
サーバーURL: http://xxxx.com/
で同じ様に動作させたい!
```

上記の対応(下記、Apache側の設定)で、現状、動作上不備が確認できたのは、以下の点です。
```
1.JSP2.0タグを使うと、アプリのルート(app/)が出力され、相対パスがずれる。
 ①に該当。=> Rewriteで常に「 /app/ → / 」と書き換えればる事で対応。
        ※jsessionIdが付与される問題はカスタムタグを作成して対応。

2.Ajaxでパラメータが受けわたらない。
 ②に該当。=> AjaxのURLが「/app/ajax/xxxxx」と形式が決まっており、
        アドレスバーにもURLは表示されないので、除外する事で対応。

3.ActionFormでPostした値が受け渡せない。

4.開発環境では1つしかないJSESSIONIDがサーバでは複数存在する。
  画面上でAjaxを実行している為かもしれませんが。。

```

```
@Apache側の設定

●httpd/conf/httpd.confの編集。
<IfModule mod_proxy_ajp.c>            ←Ajax通信用に設定。
 <Location /app/>
  ProxyPass ajp://localhost:8009/app/
 </Location>
</IfModule>

<IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$
 RewriteRule ^/app/(.*)$ /$1 [R]         ←JSP2.0タグ用に設定。
 RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$  ←Ajax通信用に除外設定。
</IfModule>
Include conf/extra/httpd-proxy.conf

●httpd/conf/extra/httpd-proxy.confの編集。
ProxyPass        / ajp://localhost:8009/app/   ←ドメインルート用に設定。
ProxyPassReverse / ajp://localhost:8009/app/
ProxyPassReverseCookiePath / /app/         ←Cookie用に設定。
```

一般的に本番環境では「ルートドメイン」となるWEBアプリは多いと思いますが、Apacheではどのように設定されているのでしょうか?上記、私が考えた対処法は普通ではないのでしょうか?

度々、同じ様な質問ばかりして申し訳ありません。
ご教示いただければ幸いです。

4
本文
  ②に該当。=> AjaxのURLが「/app/ajax/xxxxx」と形式が決まっており、
         アドレスバーにもURLは表示されないので、除外する事で対応。
 
-3.Cookieでセットした値が取得できない。
- ①でも指摘頂いたのですが、仰るとおり、Cookieの出入れがおかしいです。
+3.ActionFormでPostした値が受け渡せない。
+
 ```
 
 ```
 ●httpd/conf/extra/httpd-proxy.confの編集。
 ProxyPass        / ajp://localhost:8009/app/   ←ドメインルート用に設定。
 ProxyPassReverse / ajp://localhost:8009/app/
-ProxyPassReverseCookiePath / /app/        ←ここが問題?(正常にCookieの値を出し入れできる為に設定)
+ProxyPassReverseCookiePath / /app/         ←Cookie用に設定。
 ```
 
 一般的に本番環境では「ルートドメイン」となるWEBアプリは多いと思いますが、Apacheではどのように設定されているのでしょうか?上記、私が考えた対処法は普通ではないのでしょうか?

標準的なAJP連携(Apache2.2+Tomcat6)のドメインルート設定について

度々、すみません。以前、質問させていただいたものです。

下記でそれぞれ、ご回答頂いたのですが、私の対処の仕方の考え方が根本的に間違っているのか、動作不備が起こります。

 ①Apache2.2とTomcat6のドメインルート設定
   http://qa.atmarkit.co.jp/q/3216?_nid=2073
 ②ApacheのRewriteRuleで除外URLを設定したい
   http://qa.atmarkit.co.jp/q/3223?_nid=2082

やりたい事は単純で、ローカルの開発環境で動作しているwarをサーバ環境であるルートドメインに動作させる事です。
正直、こんなにはまるとは思っていませんでした。。

アプリのルート: app
開発環境URL: http://localhost:8080/app/
サーバーURL: http://xxxx.com/
で同じ様に動作させたい!

上記の対応(下記、Apache側の設定)で、現状、動作上不備が確認できたのは、以下の点です。

1.JSP2.0タグを使うと、アプリのルート(app/)が出力され、相対パスがずれる。
 ①に該当。=> Rewriteで常に「 /app/ → / 」と書き換えればる事で対応。
        ※jsessionIdが付与される問題はカスタムタグを作成して対応。

2.Ajaxでパラメータが受けわたらない。
 ②に該当。=> AjaxのURLが「/app/ajax/xxxxx」と形式が決まっており、
        アドレスバーにもURLは表示されないので、除外する事で対応。

3.ActionFormでPostした値が受け渡せない。

@Apache側の設定

●httpd/conf/httpd.confの編集。
<IfModule mod_proxy_ajp.c>            ←Ajax通信用に設定。
 <Location /app/>
  ProxyPass ajp://localhost:8009/app/
 </Location>
</IfModule>

<IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$
 RewriteRule ^/app/(.*)$ /$1 [R]         ←JSP2.0タグ用に設定。
 RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$  ←Ajax通信用に除外設定。
</IfModule>
Include conf/extra/httpd-proxy.conf

●httpd/conf/extra/httpd-proxy.confの編集。
ProxyPass        / ajp://localhost:8009/app/   ←ドメインルート用に設定。
ProxyPassReverse / ajp://localhost:8009/app/
ProxyPassReverseCookiePath / /app/         ←Cookie用に設定。

一般的に本番環境では「ルートドメイン」となるWEBアプリは多いと思いますが、Apacheではどのように設定されているのでしょうか?上記、私が考えた対処法は普通ではないのでしょうか?

度々、同じ様な質問ばかりして申し訳ありません。
ご教示いただければ幸いです。

度々、すみません。以前、質問させていただいたものです。

下記でそれぞれ、ご回答頂いたのですが、私の対処の仕方の考え方が根本的に間違っているのか、動作不備が起こります。

```
 ①Apache2.2とTomcat6のドメインルート設定
   http://qa.atmarkit.co.jp/q/3216?_nid=2073
 ②ApacheのRewriteRuleで除外URLを設定したい
   http://qa.atmarkit.co.jp/q/3223?_nid=2082
```

やりたい事は単純で、ローカルの開発環境で動作しているwarをサーバ環境であるルートドメインに動作させる事です。
正直、こんなにはまるとは思っていませんでした。。
```
アプリのルート: app
開発環境URL: http://localhost:8080/app/
サーバーURL: http://xxxx.com/
で同じ様に動作させたい!
```

上記の対応(下記、Apache側の設定)で、現状、動作上不備が確認できたのは、以下の点です。
```
1.JSP2.0タグを使うと、アプリのルート(app/)が出力され、相対パスがずれる。
 ①に該当。=> Rewriteで常に「 /app/ → / 」と書き換えればる事で対応。
        ※jsessionIdが付与される問題はカスタムタグを作成して対応。

2.Ajaxでパラメータが受けわたらない。
 ②に該当。=> AjaxのURLが「/app/ajax/xxxxx」と形式が決まっており、
        アドレスバーにもURLは表示されないので、除外する事で対応。

3.ActionFormでPostした値が受け渡せない。

```

```
@Apache側の設定

●httpd/conf/httpd.confの編集。
<IfModule mod_proxy_ajp.c>            ←Ajax通信用に設定。
 <Location /app/>
  ProxyPass ajp://localhost:8009/app/
 </Location>
</IfModule>

<IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$
 RewriteRule ^/app/(.*)$ /$1 [R]         ←JSP2.0タグ用に設定。
 RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$  ←Ajax通信用に除外設定。
</IfModule>
Include conf/extra/httpd-proxy.conf

●httpd/conf/extra/httpd-proxy.confの編集。
ProxyPass        / ajp://localhost:8009/app/   ←ドメインルート用に設定。
ProxyPassReverse / ajp://localhost:8009/app/
ProxyPassReverseCookiePath / /app/         ←Cookie用に設定。
```

一般的に本番環境では「ルートドメイン」となるWEBアプリは多いと思いますが、Apacheではどのように設定されているのでしょうか?上記、私が考えた対処法は普通ではないのでしょうか?

度々、同じ様な質問ばかりして申し訳ありません。
ご教示いただければ幸いです。

4
本文
 上記の対応(下記、Apache側の設定)で、現状、動作上不備が確認できたのは、以下の点です。
 ```
 1.JSP2.0タグを使うと、アプリのルート(app/)が出力され、相対パスがずれる。
- ①に該当。=> Rewriteで常に「 /app/ → / 」と書き換えれば良いと思い、
-        そのように設定。
- ※jsessionIdが付与される問題はカスタムタグを作成して対応。
+ ①に該当。=> Rewriteで常に「 /app/ → / 」と書き換えればる事で対応。
+        ※jsessionIdが付与される問題はカスタムタグを作成して対応。
 
 2.Ajaxでパラメータが受けわたらない。
  ②に該当。=> AjaxのURLが「/app/ajax/xxxxx」と形式が決まっており、
-        アドレスバーにもURLは表示しないので、Rewriteでこの形式の
-        URLは、除外すれば良いと思い、そのように設定。
+        アドレスバーにもURLは表示されないので、除外する事で対応。
 
 3.Cookieでセットした値が取得できない。
- ①のコメントでも、指摘いただいたのですが、確認したら、仰るとおり、Cookieの
-   出し入れが正しくできていません。
+ ①でも指摘頂いたのですが、仰るとおり、Cookieの出入れがおかしいです。
 ```
 
 ```

標準的なAJP連携(Apache2.2+Tomcat6)のドメインルート設定について

度々、すみません。以前、質問させていただいたものです。

下記でそれぞれ、ご回答頂いたのですが、私の対処の仕方の考え方が根本的に間違っているのか、動作不備が起こります。

 ①Apache2.2とTomcat6のドメインルート設定
   http://qa.atmarkit.co.jp/q/3216?_nid=2073
 ②ApacheのRewriteRuleで除外URLを設定したい
   http://qa.atmarkit.co.jp/q/3223?_nid=2082

やりたい事は単純で、ローカルの開発環境で動作しているwarをサーバ環境であるルートドメインに動作させる事です。
正直、こんなにはまるとは思っていませんでした。。

アプリのルート: app
開発環境URL: http://localhost:8080/app/
サーバーURL: http://xxxx.com/
で同じ様に動作させたい!

上記の対応(下記、Apache側の設定)で、現状、動作上不備が確認できたのは、以下の点です。

1.JSP2.0タグを使うと、アプリのルート(app/)が出力され、相対パスがずれる。
 ①に該当。=> Rewriteで常に「 /app/ → / 」と書き換えればる事で対応。
        ※jsessionIdが付与される問題はカスタムタグを作成して対応。

2.Ajaxでパラメータが受けわたらない。
 ②に該当。=> AjaxのURLが「/app/ajax/xxxxx」と形式が決まっており、
        アドレスバーにもURLは表示されないので、除外する事で対応。

3.Cookieでセットした値が取得できない。
 ①でも指摘頂いたのですが、仰るとおり、Cookieの出入れがおかしいです。
@Apache側の設定

●httpd/conf/httpd.confの編集。
<IfModule mod_proxy_ajp.c>            ←Ajax通信用に設定。
 <Location /app/>
  ProxyPass ajp://localhost:8009/app/
 </Location>
</IfModule>

<IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$
 RewriteRule ^/app/(.*)$ /$1 [R]         ←JSP2.0タグ用に設定。
 RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$  ←Ajax通信用に除外設定。
</IfModule>
Include conf/extra/httpd-proxy.conf

●httpd/conf/extra/httpd-proxy.confの編集。
ProxyPass        / ajp://localhost:8009/app/   ←ドメインルート用に設定。
ProxyPassReverse / ajp://localhost:8009/app/
ProxyPassReverseCookiePath / /app/        ←ここが問題?(正常にCookieの値を出し入れできる為に設定)

一般的に本番環境では「ルートドメイン」となるWEBアプリは多いと思いますが、Apacheではどのように設定されているのでしょうか?上記、私が考えた対処法は普通ではないのでしょうか?

度々、同じ様な質問ばかりして申し訳ありません。
ご教示いただければ幸いです。

度々、すみません。以前、質問させていただいたものです。

下記でそれぞれ、ご回答頂いたのですが、私の対処の仕方の考え方が根本的に間違っているのか、動作不備が起こります。

```
 ①Apache2.2とTomcat6のドメインルート設定
   http://qa.atmarkit.co.jp/q/3216?_nid=2073
 ②ApacheのRewriteRuleで除外URLを設定したい
   http://qa.atmarkit.co.jp/q/3223?_nid=2082
```

やりたい事は単純で、ローカルの開発環境で動作しているwarをサーバ環境であるルートドメインに動作させる事です。
正直、こんなにはまるとは思っていませんでした。。
```
アプリのルート: app
開発環境URL: http://localhost:8080/app/
サーバーURL: http://xxxx.com/
で同じ様に動作させたい!
```

上記の対応(下記、Apache側の設定)で、現状、動作上不備が確認できたのは、以下の点です。
```
1.JSP2.0タグを使うと、アプリのルート(app/)が出力され、相対パスがずれる。
 ①に該当。=> Rewriteで常に「 /app/ → / 」と書き換えればる事で対応。
        ※jsessionIdが付与される問題はカスタムタグを作成して対応。

2.Ajaxでパラメータが受けわたらない。
 ②に該当。=> AjaxのURLが「/app/ajax/xxxxx」と形式が決まっており、
        アドレスバーにもURLは表示されないので、除外する事で対応。

3.Cookieでセットした値が取得できない。
 ①でも指摘頂いたのですが、仰るとおり、Cookieの出入れがおかしいです。
```

```
@Apache側の設定

●httpd/conf/httpd.confの編集。
<IfModule mod_proxy_ajp.c>            ←Ajax通信用に設定。
 <Location /app/>
  ProxyPass ajp://localhost:8009/app/
 </Location>
</IfModule>

<IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$
 RewriteRule ^/app/(.*)$ /$1 [R]         ←JSP2.0タグ用に設定。
 RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$  ←Ajax通信用に除外設定。
</IfModule>
Include conf/extra/httpd-proxy.conf

●httpd/conf/extra/httpd-proxy.confの編集。
ProxyPass        / ajp://localhost:8009/app/   ←ドメインルート用に設定。
ProxyPassReverse / ajp://localhost:8009/app/
ProxyPassReverseCookiePath / /app/        ←ここが問題?(正常にCookieの値を出し入れできる為に設定)
```

一般的に本番環境では「ルートドメイン」となるWEBアプリは多いと思いますが、Apacheではどのように設定されているのでしょうか?上記、私が考えた対処法は普通ではないのでしょうか?

度々、同じ様な質問ばかりして申し訳ありません。
ご教示いただければ幸いです。

4
本文
 
 上記の対応(下記、Apache側の設定)で、現状、動作上不備が確認できたのは、以下の点です。
 ```
-1.JSP2.0タグを使ったソースでは、アプリのルート(/app/)が出力してしまう為、画像などの相対パスがずれる。
- ①に該当。=> Rewriteで常に「 /app/ → / 」と書き換えれば良いと思い、そのように設定。
-        ※jsessionIdが付与される問題はカスタムタグを作成して対応。
+1.JSP2.0タグを使うと、アプリのルート(app/)が出力され、相対パスがずれる。
+ ①に該当。=> Rewriteで常に「 /app/ → / 」と書き換えれば良いと思い、
+        そのように設定。
+ ※jsessionIdが付与される問題はカスタムタグを作成して対応。
 
 2.Ajaxでパラメータが受けわたらない。
- ②に該当。=> AjaxのURLが「/app/ajax/xxxxx」と形式が決まっており、アドレスバーにもURLは表示しないので、
-        Rewriteでこの形式のURLは、除外すれば良いと思い、そのように設定。
+ ②に該当。=> AjaxのURLが「/app/ajax/xxxxx」と形式が決まっており、
+        アドレスバーにもURLは表示しないので、Rewriteでこの形式の
+        URLは、除外すれば良いと思い、そのように設定。
 
 3.Cookieでセットした値が取得できない。
- ①のコメントでも、指摘いただいたのですが、確認したら、仰るとおり、Cookieの出し入れが正しくできていません。
+ ①のコメントでも、指摘いただいたのですが、確認したら、仰るとおり、Cookieの
+   出し入れが正しくできていません。
 ```
 
 ```

標準的なAJP連携(Apache2.2+Tomcat6)のドメインルート設定について

度々、すみません。以前、質問させていただいたものです。

下記でそれぞれ、ご回答頂いたのですが、私の対処の仕方の考え方が根本的に間違っているのか、動作不備が起こります。

 ①Apache2.2とTomcat6のドメインルート設定
   http://qa.atmarkit.co.jp/q/3216?_nid=2073
 ②ApacheのRewriteRuleで除外URLを設定したい
   http://qa.atmarkit.co.jp/q/3223?_nid=2082

やりたい事は単純で、ローカルの開発環境で動作しているwarをサーバ環境であるルートドメインに動作させる事です。
正直、こんなにはまるとは思っていませんでした。。

アプリのルート: app
開発環境URL: http://localhost:8080/app/
サーバーURL: http://xxxx.com/
で同じ様に動作させたい!

上記の対応(下記、Apache側の設定)で、現状、動作上不備が確認できたのは、以下の点です。

1.JSP2.0タグを使うと、アプリのルート(app/)が出力され、相対パスがずれる。
 ①に該当。=> Rewriteで常に「 /app/ → / 」と書き換えれば良いと思い、
        そのように設定。
 ※jsessionIdが付与される問題はカスタムタグを作成して対応。

2.Ajaxでパラメータが受けわたらない。
 ②に該当。=> AjaxのURLが「/app/ajax/xxxxx」と形式が決まっており、
        アドレスバーにもURLは表示しないので、Rewriteでこの形式の
        URLは、除外すれば良いと思い、そのように設定。

3.Cookieでセットした値が取得できない。
 ①のコメントでも、指摘いただいたのですが、確認したら、仰るとおり、Cookieの
   出し入れが正しくできていません。
@Apache側の設定

●httpd/conf/httpd.confの編集。
<IfModule mod_proxy_ajp.c>            ←Ajax通信用に設定。
 <Location /app/>
  ProxyPass ajp://localhost:8009/app/
 </Location>
</IfModule>

<IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$
 RewriteRule ^/app/(.*)$ /$1 [R]         ←JSP2.0タグ用に設定。
 RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$  ←Ajax通信用に除外設定。
</IfModule>
Include conf/extra/httpd-proxy.conf

●httpd/conf/extra/httpd-proxy.confの編集。
ProxyPass        / ajp://localhost:8009/app/   ←ドメインルート用に設定。
ProxyPassReverse / ajp://localhost:8009/app/
ProxyPassReverseCookiePath / /app/        ←ここが問題?(正常にCookieの値を出し入れできる為に設定)

一般的に本番環境では「ルートドメイン」となるWEBアプリは多いと思いますが、Apacheではどのように設定されているのでしょうか?上記、私が考えた対処法は普通ではないのでしょうか?

度々、同じ様な質問ばかりして申し訳ありません。
ご教示いただければ幸いです。

度々、すみません。以前、質問させていただいたものです。

下記でそれぞれ、ご回答頂いたのですが、私の対処の仕方の考え方が根本的に間違っているのか、動作不備が起こります。

```
 ①Apache2.2とTomcat6のドメインルート設定
   http://qa.atmarkit.co.jp/q/3216?_nid=2073
 ②ApacheのRewriteRuleで除外URLを設定したい
   http://qa.atmarkit.co.jp/q/3223?_nid=2082
```

やりたい事は単純で、ローカルの開発環境で動作しているwarをサーバ環境であるルートドメインに動作させる事です。
正直、こんなにはまるとは思っていませんでした。。
```
アプリのルート: app
開発環境URL: http://localhost:8080/app/
サーバーURL: http://xxxx.com/
で同じ様に動作させたい!
```

上記の対応(下記、Apache側の設定)で、現状、動作上不備が確認できたのは、以下の点です。
```
1.JSP2.0タグを使うと、アプリのルート(app/)が出力され、相対パスがずれる。
 ①に該当。=> Rewriteで常に「 /app/ → / 」と書き換えれば良いと思い、
        そのように設定。
 ※jsessionIdが付与される問題はカスタムタグを作成して対応。

2.Ajaxでパラメータが受けわたらない。
 ②に該当。=> AjaxのURLが「/app/ajax/xxxxx」と形式が決まっており、
        アドレスバーにもURLは表示しないので、Rewriteでこの形式の
        URLは、除外すれば良いと思い、そのように設定。

3.Cookieでセットした値が取得できない。
 ①のコメントでも、指摘いただいたのですが、確認したら、仰るとおり、Cookieの
   出し入れが正しくできていません。
```

```
@Apache側の設定

●httpd/conf/httpd.confの編集。
<IfModule mod_proxy_ajp.c>            ←Ajax通信用に設定。
 <Location /app/>
  ProxyPass ajp://localhost:8009/app/
 </Location>
</IfModule>

<IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$
 RewriteRule ^/app/(.*)$ /$1 [R]         ←JSP2.0タグ用に設定。
 RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$  ←Ajax通信用に除外設定。
</IfModule>
Include conf/extra/httpd-proxy.conf

●httpd/conf/extra/httpd-proxy.confの編集。
ProxyPass        / ajp://localhost:8009/app/   ←ドメインルート用に設定。
ProxyPassReverse / ajp://localhost:8009/app/
ProxyPassReverseCookiePath / /app/        ←ここが問題?(正常にCookieの値を出し入れできる為に設定)
```

一般的に本番環境では「ルートドメイン」となるWEBアプリは多いと思いますが、Apacheではどのように設定されているのでしょうか?上記、私が考えた対処法は普通ではないのでしょうか?

度々、同じ様な質問ばかりして申し訳ありません。
ご教示いただければ幸いです。

4
本文
 下記でそれぞれ、ご回答頂いたのですが、私の対処の仕方の考え方が根本的に間違っているのか、動作不備が起こります。
 
 ```
-●1.Apache2.2とTomcat6のドメインルート設定
-http://qa.atmarkit.co.jp/q/3216?_nid=2073
-●2.ApacheのRewriteRuleで除外URLを設定したい
-http://qa.atmarkit.co.jp/q/3223?_nid=2082
+ ①Apache2.2とTomcat6のドメインルート設定
+   http://qa.atmarkit.co.jp/q/3216?_nid=2073
+ ②ApacheのRewriteRuleで除外URLを設定したい
+   http://qa.atmarkit.co.jp/q/3223?_nid=2082
 ```
 
 やりたい事は単純で、ローカルの開発環境で動作しているwarをサーバ環境であるルートドメインに動作させる事です。
 ```
 
 上記の対応(下記、Apache側の設定)で、現状、動作上不備が確認できたのは、以下の点です。
-
+```
 1.JSP2.0タグを使ったソースでは、アプリのルート(/app/)が出力してしまう為、画像などの相対パスがずれる。
- (●1に該当。=>Rewriteで常に「 /app/ → / 」と書き換えれば良いと思い、そのように設定。)
+ ①に該当。=> Rewriteで常に「 /app/ → / 」と書き換えれば良いと思い、そのように設定。
+        ※jsessionIdが付与される問題はカスタムタグを作成して対応。
 
 2.Ajaxでパラメータが受けわたらない。
- (●2に該当。=AjaxのURLが>「/app/ajax/xxxxx」と形式が決まっており、アドレスバーにもURLは表示しないので、Rewriteでこの形式のURLは、除外すれば良いと思い、そのように設定。)
+ ②に該当。=> AjaxのURLが「/app/ajax/xxxxx」と形式が決まっており、アドレスバーにもURLは表示しないので、
+        Rewriteでこの形式のURLは、除外すれば良いと思い、そのように設定。
 
 3.Cookieでセットした値が取得できない。
- ●1のコメントでも、指摘いただいたのですが、確認したら、仰るとおり、Cookieの出し入れが正しくできていません。
-
+ ①のコメントでも、指摘いただいたのですが、確認したら、仰るとおり、Cookieの出し入れが正しくできていません。
+```
 
 ```
 @Apache側の設定

標準的なAJP連携(Apache2.2+Tomcat6)のドメインルート設定について

度々、すみません。以前、質問させていただいたものです。

下記でそれぞれ、ご回答頂いたのですが、私の対処の仕方の考え方が根本的に間違っているのか、動作不備が起こります。

 ①Apache2.2とTomcat6のドメインルート設定
   http://qa.atmarkit.co.jp/q/3216?_nid=2073
 ②ApacheのRewriteRuleで除外URLを設定したい
   http://qa.atmarkit.co.jp/q/3223?_nid=2082

やりたい事は単純で、ローカルの開発環境で動作しているwarをサーバ環境であるルートドメインに動作させる事です。
正直、こんなにはまるとは思っていませんでした。。

アプリのルート: app
開発環境URL: http://localhost:8080/app/
サーバーURL: http://xxxx.com/
で同じ様に動作させたい!

上記の対応(下記、Apache側の設定)で、現状、動作上不備が確認できたのは、以下の点です。

1.JSP2.0タグを使ったソースでは、アプリのルート(/app/)が出力してしまう為、画像などの相対パスがずれる。
 ①に該当。=> Rewriteで常に「 /app/ → / 」と書き換えれば良いと思い、そのように設定。
        ※jsessionIdが付与される問題はカスタムタグを作成して対応。

2.Ajaxでパラメータが受けわたらない。
 ②に該当。=> AjaxのURLが「/app/ajax/xxxxx」と形式が決まっており、アドレスバーにもURLは表示しないので、
        Rewriteでこの形式のURLは、除外すれば良いと思い、そのように設定。

3.Cookieでセットした値が取得できない。
 ①のコメントでも、指摘いただいたのですが、確認したら、仰るとおり、Cookieの出し入れが正しくできていません。
@Apache側の設定

●httpd/conf/httpd.confの編集。
<IfModule mod_proxy_ajp.c>            ←Ajax通信用に設定。
 <Location /app/>
  ProxyPass ajp://localhost:8009/app/
 </Location>
</IfModule>

<IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$
 RewriteRule ^/app/(.*)$ /$1 [R]         ←JSP2.0タグ用に設定。
 RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$  ←Ajax通信用に除外設定。
</IfModule>
Include conf/extra/httpd-proxy.conf

●httpd/conf/extra/httpd-proxy.confの編集。
ProxyPass        / ajp://localhost:8009/app/   ←ドメインルート用に設定。
ProxyPassReverse / ajp://localhost:8009/app/
ProxyPassReverseCookiePath / /app/        ←ここが問題?(正常にCookieの値を出し入れできる為に設定)

一般的に本番環境では「ルートドメイン」となるWEBアプリは多いと思いますが、Apacheではどのように設定されているのでしょうか?上記、私が考えた対処法は普通ではないのでしょうか?

度々、同じ様な質問ばかりして申し訳ありません。
ご教示いただければ幸いです。

度々、すみません。以前、質問させていただいたものです。

下記でそれぞれ、ご回答頂いたのですが、私の対処の仕方の考え方が根本的に間違っているのか、動作不備が起こります。

```
 ①Apache2.2とTomcat6のドメインルート設定
   http://qa.atmarkit.co.jp/q/3216?_nid=2073
 ②ApacheのRewriteRuleで除外URLを設定したい
   http://qa.atmarkit.co.jp/q/3223?_nid=2082
```

やりたい事は単純で、ローカルの開発環境で動作しているwarをサーバ環境であるルートドメインに動作させる事です。
正直、こんなにはまるとは思っていませんでした。。
```
アプリのルート: app
開発環境URL: http://localhost:8080/app/
サーバーURL: http://xxxx.com/
で同じ様に動作させたい!
```

上記の対応(下記、Apache側の設定)で、現状、動作上不備が確認できたのは、以下の点です。
```
1.JSP2.0タグを使ったソースでは、アプリのルート(/app/)が出力してしまう為、画像などの相対パスがずれる。
 ①に該当。=> Rewriteで常に「 /app/ → / 」と書き換えれば良いと思い、そのように設定。
        ※jsessionIdが付与される問題はカスタムタグを作成して対応。

2.Ajaxでパラメータが受けわたらない。
 ②に該当。=> AjaxのURLが「/app/ajax/xxxxx」と形式が決まっており、アドレスバーにもURLは表示しないので、
        Rewriteでこの形式のURLは、除外すれば良いと思い、そのように設定。

3.Cookieでセットした値が取得できない。
 ①のコメントでも、指摘いただいたのですが、確認したら、仰るとおり、Cookieの出し入れが正しくできていません。
```

```
@Apache側の設定

●httpd/conf/httpd.confの編集。
<IfModule mod_proxy_ajp.c>            ←Ajax通信用に設定。
 <Location /app/>
  ProxyPass ajp://localhost:8009/app/
 </Location>
</IfModule>

<IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$
 RewriteRule ^/app/(.*)$ /$1 [R]         ←JSP2.0タグ用に設定。
 RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$  ←Ajax通信用に除外設定。
</IfModule>
Include conf/extra/httpd-proxy.conf

●httpd/conf/extra/httpd-proxy.confの編集。
ProxyPass        / ajp://localhost:8009/app/   ←ドメインルート用に設定。
ProxyPassReverse / ajp://localhost:8009/app/
ProxyPassReverseCookiePath / /app/        ←ここが問題?(正常にCookieの値を出し入れできる為に設定)
```

一般的に本番環境では「ルートドメイン」となるWEBアプリは多いと思いますが、Apacheではどのように設定されているのでしょうか?上記、私が考えた対処法は普通ではないのでしょうか?

度々、同じ様な質問ばかりして申し訳ありません。
ご教示いただければ幸いです。

4
本文
 ProxyPassReverseCookiePath / /app/        ←ここが問題?(正常にCookieの値を出し入れできる為に設定)
 ```
 
-一般的に本番環境では「ルートドメイン」となるWEBアプリは多いと思いますが、Apacheではどのように設定されているのでしょうか?
-上記、私が考えた対処法は普通ではないのでしょうか?
+一般的に本番環境では「ルートドメイン」となるWEBアプリは多いと思いますが、Apacheではどのように設定されているのでしょうか?上記、私が考えた対処法は普通ではないのでしょうか?
 
 度々、同じ様な質問ばかりして申し訳ありません。
 ご教示いただければ幸いです。

標準的なAJP連携(Apache2.2+Tomcat6)のドメインルート設定について

度々、すみません。以前、質問させていただいたものです。

下記でそれぞれ、ご回答頂いたのですが、私の対処の仕方の考え方が根本的に間違っているのか、動作不備が起こります。

●1.Apache2.2とTomcat6のドメインルート設定
http://qa.atmarkit.co.jp/q/3216?_nid=2073
●2.ApacheのRewriteRuleで除外URLを設定したい
http://qa.atmarkit.co.jp/q/3223?_nid=2082

やりたい事は単純で、ローカルの開発環境で動作しているwarをサーバ環境であるルートドメインに動作させる事です。
正直、こんなにはまるとは思っていませんでした。。

アプリのルート: app
開発環境URL: http://localhost:8080/app/
サーバーURL: http://xxxx.com/
で同じ様に動作させたい!

上記の対応(下記、Apache側の設定)で、現状、動作上不備が確認できたのは、以下の点です。

1.JSP2.0タグを使ったソースでは、アプリのルート(/app/)が出力してしまう為、画像などの相対パスがずれる。
 (●1に該当。=>Rewriteで常に「 /app/ → / 」と書き換えれば良いと思い、そのように設定。)

2.Ajaxでパラメータが受けわたらない。
 (●2に該当。=AjaxのURLが>「/app/ajax/xxxxx」と形式が決まっており、アドレスバーにもURLは表示しないので、Rewriteでこの形式のURLは、除外すれば良いと思い、そのように設定。)

3.Cookieでセットした値が取得できない。
 ●1のコメントでも、指摘いただいたのですが、確認したら、仰るとおり、Cookieの出し入れが正しくできていません。

@Apache側の設定

●httpd/conf/httpd.confの編集。
<IfModule mod_proxy_ajp.c>            ←Ajax通信用に設定。
 <Location /app/>
  ProxyPass ajp://localhost:8009/app/
 </Location>
</IfModule>

<IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$
 RewriteRule ^/app/(.*)$ /$1 [R]         ←JSP2.0タグ用に設定。
 RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$  ←Ajax通信用に除外設定。
</IfModule>
Include conf/extra/httpd-proxy.conf

●httpd/conf/extra/httpd-proxy.confの編集。
ProxyPass        / ajp://localhost:8009/app/   ←ドメインルート用に設定。
ProxyPassReverse / ajp://localhost:8009/app/
ProxyPassReverseCookiePath / /app/        ←ここが問題?(正常にCookieの値を出し入れできる為に設定)

一般的に本番環境では「ルートドメイン」となるWEBアプリは多いと思いますが、Apacheではどのように設定されているのでしょうか?上記、私が考えた対処法は普通ではないのでしょうか?

度々、同じ様な質問ばかりして申し訳ありません。
ご教示いただければ幸いです。

度々、すみません。以前、質問させていただいたものです。

下記でそれぞれ、ご回答頂いたのですが、私の対処の仕方の考え方が根本的に間違っているのか、動作不備が起こります。

```
●1.Apache2.2とTomcat6のドメインルート設定
http://qa.atmarkit.co.jp/q/3216?_nid=2073
●2.ApacheのRewriteRuleで除外URLを設定したい
http://qa.atmarkit.co.jp/q/3223?_nid=2082
```

やりたい事は単純で、ローカルの開発環境で動作しているwarをサーバ環境であるルートドメインに動作させる事です。
正直、こんなにはまるとは思っていませんでした。。
```
アプリのルート: app
開発環境URL: http://localhost:8080/app/
サーバーURL: http://xxxx.com/
で同じ様に動作させたい!
```

上記の対応(下記、Apache側の設定)で、現状、動作上不備が確認できたのは、以下の点です。

1.JSP2.0タグを使ったソースでは、アプリのルート(/app/)が出力してしまう為、画像などの相対パスがずれる。
 (●1に該当。=>Rewriteで常に「 /app/ → / 」と書き換えれば良いと思い、そのように設定。)

2.Ajaxでパラメータが受けわたらない。
 (●2に該当。=AjaxのURLが>「/app/ajax/xxxxx」と形式が決まっており、アドレスバーにもURLは表示しないので、Rewriteでこの形式のURLは、除外すれば良いと思い、そのように設定。)

3.Cookieでセットした値が取得できない。
 ●1のコメントでも、指摘いただいたのですが、確認したら、仰るとおり、Cookieの出し入れが正しくできていません。


```
@Apache側の設定

●httpd/conf/httpd.confの編集。
<IfModule mod_proxy_ajp.c>            ←Ajax通信用に設定。
 <Location /app/>
  ProxyPass ajp://localhost:8009/app/
 </Location>
</IfModule>

<IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$
 RewriteRule ^/app/(.*)$ /$1 [R]         ←JSP2.0タグ用に設定。
 RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$  ←Ajax通信用に除外設定。
</IfModule>
Include conf/extra/httpd-proxy.conf

●httpd/conf/extra/httpd-proxy.confの編集。
ProxyPass        / ajp://localhost:8009/app/   ←ドメインルート用に設定。
ProxyPassReverse / ajp://localhost:8009/app/
ProxyPassReverseCookiePath / /app/        ←ここが問題?(正常にCookieの値を出し入れできる為に設定)
```

一般的に本番環境では「ルートドメイン」となるWEBアプリは多いと思いますが、Apacheではどのように設定されているのでしょうか?上記、私が考えた対処法は普通ではないのでしょうか?

度々、同じ様な質問ばかりして申し訳ありません。
ご教示いただければ幸いです。

4
本文
 やりたい事は単純で、ローカルの開発環境で動作しているwarをサーバ環境であるルートドメインに動作させる事です。
 正直、こんなにはまるとは思っていませんでした。。
 ```
+アプリのルート: app
 開発環境URL: http://localhost:8080/app/
 サーバーURL: http://xxxx.com/
 で同じ様に動作させたい!
 
 上記の対応(下記、Apache側の設定)で、現状、動作上不備が確認できたのは、以下の点です。
 
-・JSP2.0タグを使ったソースでは、アプリのルート(/app/)が表示してしまう為、画像などの相対パスがずれ、表示されない。
- (●1に該当。=>Rewriteで常に「/app/ → /」と書き換えれば良いと思い、そのように設定。)
+1.JSP2.0タグを使ったソースでは、アプリのルート(/app/)が出力してしまう為、画像などの相対パスがずれる。
+ (●1に該当。=>Rewriteで常に「 /app/ → / 」と書き換えれば良いと思い、そのように設定。)
 
-・Ajaxでパラメータが受けわたらない。
- (●2に該当。=AjaxのURLが>「/app/ajax/xxxxx」と形式が決まっており、アドレスバーにもURLは表示せないので、Rewriteでこの書式の場合は、除外すれば良いと思い、そのように設定。)
+2.Ajaxでパラメータが受けわたらない。
+ (●2に該当。=AjaxのURLが>「/app/ajax/xxxxx」と形式が決まっており、アドレスバーにもURLは表示しないので、Rewriteでこの形式のURLは、除外すれば良いと思い、そのように設定。)
 
-・Cookieでセットした値が取得できない。
- ●1のコメントでも、指摘いただいたのですが、確認したら、仰るとおり、Cookieの出し入れが正しくできません。
+3.Cookieでセットした値が取得できない。
+ ●1のコメントでも、指摘いただいたのですが、確認したら、仰るとおり、Cookieの出し入れが正しくできていません。
 
 
 ```
 <IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$
- RewriteRule ^/app/(.*)$ /$1 [R]         ←ドメインルートの為の設定。(JSP2.0タグ用に)
+ RewriteRule ^/app/(.*)$ /$1 [R]         ←JSP2.0タグ用に設定。
  RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$  ←Ajax通信用に除外設定。
 </IfModule>
 Include conf/extra/httpd-proxy.conf
 
 ●httpd/conf/extra/httpd-proxy.confの編集。
-ProxyPass        / ajp://localhost:8009/app/   ←ドメインルートの為の設定。
+ProxyPass        / ajp://localhost:8009/app/   ←ドメインルート用に設定。
 ProxyPassReverse / ajp://localhost:8009/app/
 ProxyPassReverseCookiePath / /app/        ←ここが問題?(正常にCookieの値を出し入れできる為に設定)
 ```

標準的なAJP連携(Apache2.2+Tomcat6)のドメインルート設定について

度々、すみません。以前、質問させていただいたものです。

下記でそれぞれ、ご回答頂いたのですが、私の対処の仕方の考え方が根本的に間違っているのか、動作不備が起こります。

●1.Apache2.2とTomcat6のドメインルート設定
http://qa.atmarkit.co.jp/q/3216?_nid=2073
●2.ApacheのRewriteRuleで除外URLを設定したい
http://qa.atmarkit.co.jp/q/3223?_nid=2082

やりたい事は単純で、ローカルの開発環境で動作しているwarをサーバ環境であるルートドメインに動作させる事です。
正直、こんなにはまるとは思っていませんでした。。

アプリのルート: app
開発環境URL: http://localhost:8080/app/
サーバーURL: http://xxxx.com/
で同じ様に動作させたい!

上記の対応(下記、Apache側の設定)で、現状、動作上不備が確認できたのは、以下の点です。

1.JSP2.0タグを使ったソースでは、アプリのルート(/app/)が出力してしまう為、画像などの相対パスがずれる。
 (●1に該当。=>Rewriteで常に「 /app/ → / 」と書き換えれば良いと思い、そのように設定。)

2.Ajaxでパラメータが受けわたらない。
 (●2に該当。=AjaxのURLが>「/app/ajax/xxxxx」と形式が決まっており、アドレスバーにもURLは表示しないので、Rewriteでこの形式のURLは、除外すれば良いと思い、そのように設定。)

3.Cookieでセットした値が取得できない。
 ●1のコメントでも、指摘いただいたのですが、確認したら、仰るとおり、Cookieの出し入れが正しくできていません。

@Apache側の設定

●httpd/conf/httpd.confの編集。
<IfModule mod_proxy_ajp.c>            ←Ajax通信用に設定。
 <Location /app/>
  ProxyPass ajp://localhost:8009/app/
 </Location>
</IfModule>

<IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$
 RewriteRule ^/app/(.*)$ /$1 [R]         ←JSP2.0タグ用に設定。
 RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$  ←Ajax通信用に除外設定。
</IfModule>
Include conf/extra/httpd-proxy.conf

●httpd/conf/extra/httpd-proxy.confの編集。
ProxyPass        / ajp://localhost:8009/app/   ←ドメインルート用に設定。
ProxyPassReverse / ajp://localhost:8009/app/
ProxyPassReverseCookiePath / /app/        ←ここが問題?(正常にCookieの値を出し入れできる為に設定)

一般的に本番環境では「ルートドメイン」となるWEBアプリは多いと思いますが、Apacheではどのように設定されているのでしょうか?
上記、私が考えた対処法は普通ではないのでしょうか?

度々、同じ様な質問ばかりして申し訳ありません。
ご教示いただければ幸いです。

度々、すみません。以前、質問させていただいたものです。

下記でそれぞれ、ご回答頂いたのですが、私の対処の仕方の考え方が根本的に間違っているのか、動作不備が起こります。

```
●1.Apache2.2とTomcat6のドメインルート設定
http://qa.atmarkit.co.jp/q/3216?_nid=2073
●2.ApacheのRewriteRuleで除外URLを設定したい
http://qa.atmarkit.co.jp/q/3223?_nid=2082
```

やりたい事は単純で、ローカルの開発環境で動作しているwarをサーバ環境であるルートドメインに動作させる事です。
正直、こんなにはまるとは思っていませんでした。。
```
アプリのルート: app
開発環境URL: http://localhost:8080/app/
サーバーURL: http://xxxx.com/
で同じ様に動作させたい!
```

上記の対応(下記、Apache側の設定)で、現状、動作上不備が確認できたのは、以下の点です。

1.JSP2.0タグを使ったソースでは、アプリのルート(/app/)が出力してしまう為、画像などの相対パスがずれる。
 (●1に該当。=>Rewriteで常に「 /app/ → / 」と書き換えれば良いと思い、そのように設定。)

2.Ajaxでパラメータが受けわたらない。
 (●2に該当。=AjaxのURLが>「/app/ajax/xxxxx」と形式が決まっており、アドレスバーにもURLは表示しないので、Rewriteでこの形式のURLは、除外すれば良いと思い、そのように設定。)

3.Cookieでセットした値が取得できない。
 ●1のコメントでも、指摘いただいたのですが、確認したら、仰るとおり、Cookieの出し入れが正しくできていません。


```
@Apache側の設定

●httpd/conf/httpd.confの編集。
<IfModule mod_proxy_ajp.c>            ←Ajax通信用に設定。
 <Location /app/>
  ProxyPass ajp://localhost:8009/app/
 </Location>
</IfModule>

<IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$
 RewriteRule ^/app/(.*)$ /$1 [R]         ←JSP2.0タグ用に設定。
 RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$  ←Ajax通信用に除外設定。
</IfModule>
Include conf/extra/httpd-proxy.conf

●httpd/conf/extra/httpd-proxy.confの編集。
ProxyPass        / ajp://localhost:8009/app/   ←ドメインルート用に設定。
ProxyPassReverse / ajp://localhost:8009/app/
ProxyPassReverseCookiePath / /app/        ←ここが問題?(正常にCookieの値を出し入れできる為に設定)
```

一般的に本番環境では「ルートドメイン」となるWEBアプリは多いと思いますが、Apacheではどのように設定されているのでしょうか?
上記、私が考えた対処法は普通ではないのでしょうか?

度々、同じ様な質問ばかりして申し訳ありません。
ご教示いただければ幸いです。

質問を投稿

標準的なAJP連携(Apache2.2+Tomcat6)のドメインルート設定について

度々、すみません。以前、質問させていただいたものです。

下記でそれぞれ、ご回答頂いたのですが、私の対処の仕方の考え方が根本的に間違っているのか、動作不備が起こります。

●1.Apache2.2とTomcat6のドメインルート設定
http://qa.atmarkit.co.jp/q/3216?_nid=2073
●2.ApacheのRewriteRuleで除外URLを設定したい
http://qa.atmarkit.co.jp/q/3223?_nid=2082

やりたい事は単純で、ローカルの開発環境で動作しているwarをサーバ環境であるルートドメインに動作させる事です。
正直、こんなにはまるとは思っていませんでした。。

開発環境URL: http://localhost:8080/app/
サーバーURL: http://xxxx.com/
で同じ様に動作させたい!

上記の対応(下記、Apache側の設定)で、現状、動作上不備が確認できたのは、以下の点です。

・JSP2.0タグを使ったソースでは、アプリのルート(/app/)が表示してしまう為、画像などの相対パスがずれ、表示されない。
 (●1に該当。=>Rewriteで常に「/app/ → /」と書き換えれば良いと思い、そのように設定。)

・Ajaxでパラメータが受けわたらない。
 (●2に該当。=AjaxのURLが>「/app/ajax/xxxxx」と形式が決まっており、アドレスバーにもURLは表示せないので、Rewriteでこの書式の場合は、除外すれば良いと思い、そのように設定。)

・Cookieでセットした値が取得できない。
 ●1のコメントでも、指摘いただいたのですが、確認したら、仰るとおり、Cookieの出し入れが正しくできません。

@Apache側の設定

●httpd/conf/httpd.confの編集。
<IfModule mod_proxy_ajp.c>            ←Ajax通信用に設定。
 <Location /app/>
  ProxyPass ajp://localhost:8009/app/
 </Location>
</IfModule>

<IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$
 RewriteRule ^/app/(.*)$ /$1 [R]         ←ドメインルートの為の設定。(JSP2.0タグ用に)
 RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$  ←Ajax通信用に除外設定。
</IfModule>
Include conf/extra/httpd-proxy.conf

●httpd/conf/extra/httpd-proxy.confの編集。
ProxyPass        / ajp://localhost:8009/app/   ←ドメインルートの為の設定。
ProxyPassReverse / ajp://localhost:8009/app/
ProxyPassReverseCookiePath / /app/        ←ここが問題?(正常にCookieの値を出し入れできる為に設定)

一般的に本番環境では「ルートドメイン」となるWEBアプリは多いと思いますが、Apacheではどのように設定されているのでしょうか?
上記、私が考えた対処法は普通ではないのでしょうか?

度々、同じ様な質問ばかりして申し訳ありません。
ご教示いただければ幸いです。

度々、すみません。以前、質問させていただいたものです。

下記でそれぞれ、ご回答頂いたのですが、私の対処の仕方の考え方が根本的に間違っているのか、動作不備が起こります。

```
●1.Apache2.2とTomcat6のドメインルート設定
http://qa.atmarkit.co.jp/q/3216?_nid=2073
●2.ApacheのRewriteRuleで除外URLを設定したい
http://qa.atmarkit.co.jp/q/3223?_nid=2082
```

やりたい事は単純で、ローカルの開発環境で動作しているwarをサーバ環境であるルートドメインに動作させる事です。
正直、こんなにはまるとは思っていませんでした。。
```
開発環境URL: http://localhost:8080/app/
サーバーURL: http://xxxx.com/
で同じ様に動作させたい!
```

上記の対応(下記、Apache側の設定)で、現状、動作上不備が確認できたのは、以下の点です。

・JSP2.0タグを使ったソースでは、アプリのルート(/app/)が表示してしまう為、画像などの相対パスがずれ、表示されない。
 (●1に該当。=>Rewriteで常に「/app/ → /」と書き換えれば良いと思い、そのように設定。)

・Ajaxでパラメータが受けわたらない。
 (●2に該当。=AjaxのURLが>「/app/ajax/xxxxx」と形式が決まっており、アドレスバーにもURLは表示せないので、Rewriteでこの書式の場合は、除外すれば良いと思い、そのように設定。)

・Cookieでセットした値が取得できない。
 ●1のコメントでも、指摘いただいたのですが、確認したら、仰るとおり、Cookieの出し入れが正しくできません。


```
@Apache側の設定

●httpd/conf/httpd.confの編集。
<IfModule mod_proxy_ajp.c>            ←Ajax通信用に設定。
 <Location /app/>
  ProxyPass ajp://localhost:8009/app/
 </Location>
</IfModule>

<IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$
 RewriteRule ^/app/(.*)$ /$1 [R]         ←ドメインルートの為の設定。(JSP2.0タグ用に)
 RewriteCond %{REQUEST_URI} !^/app/ajax/(.*)$  ←Ajax通信用に除外設定。
</IfModule>
Include conf/extra/httpd-proxy.conf

●httpd/conf/extra/httpd-proxy.confの編集。
ProxyPass        / ajp://localhost:8009/app/   ←ドメインルートの為の設定。
ProxyPassReverse / ajp://localhost:8009/app/
ProxyPassReverseCookiePath / /app/        ←ここが問題?(正常にCookieの値を出し入れできる為に設定)
```

一般的に本番環境では「ルートドメイン」となるWEBアプリは多いと思いますが、Apacheではどのように設定されているのでしょうか?
上記、私が考えた対処法は普通ではないのでしょうか?

度々、同じ様な質問ばかりして申し訳ありません。
ご教示いただければ幸いです。