【问题标题】:Best way to have tomcat app reside at /让tomcat应用程序驻留在/的最佳方式
【发布时间】:2011-05-19 13:10:53
【问题描述】:

在工作中,我们有许多 Spring 应用程序在一台 tomcat 服务器上运行。一些应用程序有自己的域,在 apache 中有一个虚拟主机,它将请求从 /url 重写到 /context_root/url。

这一切都很好,除了当我使用一些处理 url 的 springs 标记库时。一个例子是<form:form> 标签,它创建了 /context_root/form 的动作并将用户带离 /。现在,当发生这种情况时,应用程序仍然可以运行,但管理层不想看到上下文根。

解决这个问题的最佳方法是什么?

【问题讨论】:

    标签: apache spring-mvc


    【解决方案1】:

    万一有人偶然发现,我最终找到了答案。

    使用 Tomcat,您可以拥有multiple hosts。所以我用我的应用程序设置了一个主机作为默认的 web 应用程序。这是一个例子:

    向 server.xml 添加另一个主机

    <Host name="lilhug.mydomain.com"  appBase="lilhug"
            unpackWARs="true" autoDeploy="true"
            xmlValidation="false" xmlNamespaceAware="false"/>
    

    创建一些文件和目录

    mkdir $CATALINA_HOME/lilhug
    mkdir $CATALINA_HOME/conf/Catalina/lilhug.mydomain.com
    

    如果你想要这个主机的 Tomcat 管理器

    cd $CATALINA_HOME/conf/Catalina
    cp localhost/manager.xml lilhug.mydomain.com
    

    然后重启tomcat就好了。使用在新主机上运行的 /manager 将 lilhug 应用程序部署到 / 或将战争复制到 $CATALINA_HOME/lilhug/ROOT.war

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-10
      • 1970-01-01
      • 1970-01-01
      • 2023-03-27
      • 2013-07-02
      • 1970-01-01
      相关资源
      最近更新 更多