Tomcat 虚拟主机配置

Tomcat 虚拟主机配置

背景:

我在 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>

相关内容