したがって、基本的には次の URL を使用して webapp を作成しましたwww.foo.com/foo
(ローカルにデプロイすると、アプリには次の URL が含まれますlocalhost:8080/foo/
)。www.foo.com
ただし、代わりに使用したいと思います。どうすればこれを行うことができますか?ありがとう!apache2 Web サーバーと tomcat 7 があります。
2 に答える
これは、Spring、Apache、またはTomcatとは関係ありません。それはすべて名前解決に関するものであり、OSの下位レベルのものによって行われます。ホストファイルのlocalhost行を次のように変更することで、www.foo.comをローカルマシンに強制的に解決できます。
127.0.0.1 localhost www.foo.com
Linuxでは、それはにあり/etc/hosts
ます。Windowsでは、次の場所にありますC:\Windows\System32\drivers\etc\hosts
(これを提供してくれた@JBNizetに感謝します)。ただし、これを行うと、実際のwww.foo.comにアクセスできなくなります。これは、常にローカルマシンに解決されるためです。
アプリが内部で「www.foo.com」を参照していて、機能するために正しく解決する必要があるためにこれを行おうとしている場合は、間違った方法でその問題を解決しようとしています。これらの値を何らかの外部構成に引き出して、アプリが実行されている環境に適切に設定できるようにする必要があります。
更新:これがtomcatのルートコンテキストにデプロイするだけの場合は、 Tomcat 6:ROOTアプリケーションを変更する方法のように何度か回答されています。
ProxyPass / http://www.abc.com:8080/myApp/
ProxyPassReverse / http://www.abc.com:8080/myApp/
またはと
<VirtualHost X.X.X.X:80>
ServerName tomcatpage.yourdomain.com
ServerAlias tomcatpage.yourdomain.com
Redirect permanent / http://tomcatpage.yourdomain.com:8080/
</VirtualHost>
mod_proxyについてもっと読む。