背景:
我在 Tomcat 的 server.xml 中配置了一个主机,如下所示:
<Host name="mydomain.com"
appBase="webapps/myapp"
unpackWARs="true"
autoDeploy="true"
xmlValidation="false"
xmlNamespaceAware="false">
<Context path="" docBase="."/>
</Host>
问题:
当我http://mydomain.com
在浏览器中输入内容时,它运行正常。但是当我输入内容时,http://www.mydomain.com
它显示空白页。
我尝试过的解决方法:
我尝试创建另一个主机:
<Host name="www.mydomain.com"
appBase="webapps/myapp"
unpackWARs="true"
autoDeploy="true"
xmlValidation="false"
xmlNamespaceAware="false">
<Context path="" docBase="."/>
</Host>
结果:
看起来运行正常(当我输入时http://www.mydomain.com
,它会显示常规站点)。但后来我发现这种方式 Tomcat 会创建同一应用程序的两个实例;这使这种方法无效。
如果您认为有更好的解决方法,请告诉我。
非常感谢!
附言
这是我在 serverfault.com 上的第一个问题,我不确定这个问题是否以前被问过(至少我找不到)。如果能提供任何相关问题的链接,我将不胜感激。
答案1
您需要一个虚拟主机名别名。
<Host name="www.mydomain.com" ...>
...
<Alias>mydomain.com</Alias>
...
</Host>