tomcat - 如何配置具有多个域的 Tomcat; www 映射到错误的域

标签 tomcat subdomain no-www

我对 Tomcat 了解不多,但我正努力让它继续运行。我们有一个从单个域开始的 Tomcat 设置,但后来我们添加了另一个域('mysite.net')。我们的 server.xml 看起来像:

  <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">
    <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
           prefix="localhost_access_log" suffix=".txt"
           pattern="%h %l %u %t &quot;%r&quot; %s %b" />
  </Host>
  <Host name="mysite.net" appBase="webapps/mysite" path="" unpackWARs="true" autoDeploy="true">
    <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
       prefix="mysite_access_log." suffix=".txt"
       pattern="%h %l %u %t &quot;%r&quot; %s %b" />
  </Host>

mysite.com 工作正常 - 问题是 www.mysite.com 解析到我们的第一个站点(在/usr/share/tomcat/webapps/ROOT 下本地找到)。也许问题已通过 .htaccess 文件解决?我的 server.xml 配置完全错误吗?

最佳答案

如果 mysite.com 和 mysite.net 是完全独立的应用程序: www.mysite.net 使用不同的文件夹,/usr/share/tomcat/mysite例子。然后对第二个站点使用 appBase="mysite"。这样你就可以为每个人都有一个 ROOT.war。

如果 mysite.com 和 mysite.net 做同样的事情:在主机标签下添加一个别名。

<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">
<Alias>www.mysite.net</Alias>
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
      prefix="localhost_access_log" suffix=".txt"
      pattern="%h %l %u %t &quot;%r&quot; %s %b" />
</Host>

关于tomcat - 如何配置具有多个域的 Tomcat; www 映射到错误的域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39502464/

相关文章:

java - 安排任务,确保任务一直在执行

java - 是否可以在 tomcat 中编辑类文件并重新编译该单个文件?

perl 催化剂 www 到非 www 重定向

java - 在域中部署Java Web应用程序war文件

ubuntu - 如何配置nginx www和非www域

ssl - nginx www 重定向到非 www 抛出证书错误

tomcat - 在 nginx 上使用 Angular 2 前端有哪些优势?

java - Tomcat 7.0.29 servlet-api 类加载器问题

ruby-on-rails - Rails 3.x TLD长度

wordpress - 重定向子域并保留 url 结构