QA@IT

Apache2系(2.2.15)+Tomcat7系(7.0.54)連携にてサブドメインの転送

1837 PV

Tomcat7にて複数ドメインのWebApplicationを運用しています。
Tomcat側でサブドメインを含むURLを転送する方法を教授いただければ助かります。

Server.xmlにて<Alias>www.aaa.com</Alias>を記述すれば"http://www.aaa.com/"は転送できますが、
"http://123.aaa.com/"は転送できません。
※もちろん、<Alias>123.aaa.com</Alias>を記述すれば転送できますが、"123"はランダムで変化します。

例えば<Alias>*.aaa.com</Alias>とか記述できれば良いのですが、
この記述はあくまでも文字列"*"と認識されます。

Apache側Conf→
<VirtualHost *:80>
ServerName aaa.com
ServerAlias *.aaa.com
-- 中略 --
<Location />
ProxyPass ajp://aaa.com:8009/home/
</Location>
</VirtualHost>

<VirtualHost *:80>
ServerName bbb.com
ServerAlias *.bbb.com
-- 中略 --
<Location />
ProxyPass ajp://bbb.com:8009/home/
</Location>
</VirtualHost>

Tomcat側Server.xml→
<Host name="aaa.com" appBase="webapps1" unpackWARs="true" autoDeploy="true">
<Alias>www.aaa.com</Alias>
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="aaa.com_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>
</Host>

<Host name="bbb.com" appBase="webapps2" unpackWARs="true" autoDeploy="true">
<Alias>www.bbb.com</Alias>
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="bbb.com_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>
</Host>

  • 現在のTomcat7ではHost nameにワイルドカードは使用できない仕様ということが判明。
    やはりApache側のRewriteとTomcat側のAliasで対応するしか無いようです。
    -
ウォッチ

この質問への回答やコメントをメールでお知らせします。