【问题标题】:Dynamic Wildcard settings in Tomcat Server.xml (Non www)Tomcat Server.xml 中的动态通配符设置(非 www)
【发布时间】:2017-06-19 12:49:31
【问题描述】:

例如.com,appBase 用于

a) www.example.comexample.com/home/example/public_html/e - 一个 wordpress 网站。

b) 任何其他 *.example.com/home/example/public_html - Java 网络应用程序。

为了实现这一点,在 server.xml 中,我维护了以下内容

a) 对于 www 和 example.com

<Host name="example.com" appBase="/home/example/public_html/e" ...>
<Alias>www.example.com</Alias>
...
</Host>

b) 对于其他通配符,以下是不工作

<Host name="*.example.com" appBase="/home/example/public_html" ...>
...
</Host>

因此,作为一种解决方法,每当客户动态注册 a、b、c 等时,我都必须手动添加。每次都需要重新启动 Tomcat。

<Host name="*.example.com" appBase="/home/example/public_html" ...>
<Alias>a.example.com</Alias>
<Alias>b.example.com</Alias>
<Alias>c.example.com</Alias>    
...
</Host>

我的问题

由于通配符是在客户端注册时动态生成的,如何在server.xml中动态设置,避免手动输入 & Tomcat重启

【问题讨论】:

    标签: java apache tomcat server server.xml


    【解决方案1】:

    目前我知道的唯一方法是在 server.xml 中指定默认主机

    <Engine name="Catalina" defaultHost="default-host">
    

    然后在文件中你可以指定所有请求去一个特定的主机

    <Host name="example-site">
            <Context path="" docBase="/home/example/public_html/e" />
            <Alias>example.com</Alias>
            <Alias>www.example.com</Alias>
          </Host>
    
          <Host name="registered-customers">
            <Context path="" docBase="/home/example/public_html" />
            <Alias>default-host</Alias>
          </Host>
    

    祝你好运:)

    【讨论】:

      猜你喜欢
      • 2012-03-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-28
      • 1970-01-01
      • 2023-03-19
      • 1970-01-01
      • 2021-03-03
      相关资源
      最近更新 更多