我在本地Tomcat服务器上托管了基于Java的Web应用程序。截至目前,我正在使用http://localhost:8080/myApp
之类的网址访问它。但我希望使用域名访问它,例如http://us.localApp.com/myApp
。 Simlilary我希望网络上的其他机器只能通过此域URL访问它。我是否必须在我的应用程序或Tomcat设置中进行更改,或者我是否需要提及
我的hosts file中的127.0.0.1 us.localApp.com
条目。
我可以在appConfig.xml
中看到此条目,并且还看到有些人使用localApp.com <!ENTITY appDomain "localApp.com">
进行访问,但我该如何处理呢?
我在 hosts 文件中创建了条目127.0.0.1 google.com
。当我输入http://google.com时,我希望它会重定向到本地应用程序,即我的应用程序,但它仍会转到Google网站。为什么呢?
答案 0 :(得分:2)
hosts文件是我能想到的最简单的方法,但它需要在每台机器上本地实现。另一种方法是在您的网络上安装本地DNS服务器,并将该特定DNS请求路由到您的应用服务器。
答案 1 :(得分:1)
主机文件不接受通配符(某些应用程序,如angryhosts)。您的地址必须包含子域名,至少是默认的子域名:www.localApp.com
主机文件不知道端口。您必须访问您的应用程序,如us.myApp.com:8080/myApp或将您的tomcat端口更改为Web默认值(80)。如果您需要为此子域使用单独的逻辑,请使用拦截器类。
此方法仅用于测试目的,因为您必须在访问应用的每台计算机上执行此操作。
使用Tomcat虚拟主机 http://tomcat.apache.org/tomcat-6.0-doc/virtual-hosting-howto.html
如果您想以www.myApp.com而非www.myApp.com/myApp访问您的应用,您可能希望删除Tomcat中的ROOT项目文件夹,并将您的应用重命名为ROOT。或者阅读这篇文章的评论: http://benhutchison.wordpress.com/2008/07/30/how-to-configure-tomcat-root-context/