###Apaceのmod_proxyやmod_rewriteの設定でWebサイトのURLを書き換えたいです。
現在Tomcat上でJavaで作成したA~Dのシステムが動作しています。
アクセスURLはそれぞれ以下のようになっています。
- http://{ドメインA}:8080/{Aのwarファイル名}
- http://{ドメインB}:8080/{Bのwarファイル名}
- http://{ドメインC}:8080/{Cのwarファイル名}
- http://{ドメインD}:8080/{Dのwarファイル名}
それぞれのアクセスURLを以下の様にしたいと考えております。
- http://{ドメインA}/
- http://{ドメインB}/
- http://{ドメインC}/
- http://{ドメインD}/
###上記を実現する為にApacheのhttpd.confを修正したところ、アクセスURLが書き換わってしまう上にCSSや画像が表示されなくなりました。
http://{ドメインB}/ → http://{ドメインB}/{Cのwarファイル名}/login
※/loginの部分についてはシステムの問題なので考慮外として下さいませ。
###httpd.confの修正内容は以下の通りです
httpd.conf
1<VirtualHost *:80> 2 ServerName {ドメインC} 3 ServerAdmin www@{ドメインC} 4 DocumentRoot /var/www/{ドメイン名C}/htdocs 5 6 ProxyRequests Off 7 ProxyPreserveHost On 8 RequestHeader unset Accept-Encoding 9 <Proxy *> 10 Order deny,allow 11 Allow from all 12 </Proxy> 13 14 ProxyPass /phpmyadmin ! 15 ProxyPass / http://{サーバのIPアドレス}:8080/{Cのwarファイル名}/ 16 RewriteEngine on 17 RewriteCond %[REQUEST_FILENAME} !^(.*)\.(gif|png|jpg|jpeg)$ [NC] 18 RewriteRule ^(/.*) ajp://{サーバのIPアドレス}}:8009/{Cのwarファイル名}/$1 [P] 19 SetOutputFilter proxy-html 20 ProxyHTMLExtended on 21 ProxyPassReverse /{Cのwarファイル名}/ / 22 ProxyPassReverseCookiePath /{Cのwarファイル名}/ / 23 ProxyHTMLURLMap /{Cのwarファイル名}/ / 24</VirtualHost>
###試したこと
- 同一ドメインで使用したいphpmyadminの除外設定を入れました
- 画像が表示されなかった為、mod_rewriteの除外設定を入れました
###補足情報(言語/FW/ツール等のバージョンなど)
CentOS7
Apache2.4
Tomcat8.x
インフラの知識があまりなく、自身で調査しながら実施したのですがなかなか思った通りにいかずこちらで質問させて頂くことにしました。
お手数をお掛けして申し訳ございませんが、よろしくお願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/09/12 05:54