【问题标题】:Omit app name from URLs & just use domain name to access application?从 URL 中省略应用程序名称并仅使用域名访问应用程序?
【发布时间】:2013-11-25 16:45:02
【问题描述】:

我希望我的应用程序在以下 URL 下运行:

www.myDomainName.com/welcome

而不是:

www.myDomainName.com/myAppName/welcome

我应该如何配置?

我确实找到了一种方法来完成此操作,方法是在context.xml(在项目目录中)将path 属性指定为path="/"。但不确定这是最好的方法吗?!

另一个问题是我将如何访问 Tomcat 服务器的根页面,而我之前可以通过 localhost:8080 访问它?


处理在 Tomcat 7 上运行的 JSF(Myfaces 2.2 beta)项目

【问题讨论】:

    标签: jakarta-ee tomcat war contextpath


    【解决方案1】:

    我应该如何配置?

    取决于使用的服务器。这在 WAR 内部是无法控制的。只需查阅特定于服务器的文档如何配置上下文路径。

    请注意,这意味着您应该从不硬编码 webapp 代码和 Java 源代码中的上下文路径,始终依赖 HttpServletRequest 和/或 ServletContextgetContextPath() 方法和在<h:outputStylesheet><h:outputScript><h:graphicImage><h:link><h:button> 等组件上的 Facelets 源代码中自动添加上下文路径,或 #{request.contextPath} 以纯格式打印它<a><link>等元素。


    我确实找到了一种方法来实现这一点,方法是在 context.xml(在项目目录中)中将路径属性指定为 path="/"。但不确定这是最好的方法吗?!

    这确实是专门针对 Tomcat 的正确方法。

    另一种方法是将 WAR 文件重命名为 ROOT.war(并删除/重命名代表 Tomcat 默认主页的旧 apache-tomcat/webapps/ROOT 文件夹)。但这通常有点笨拙。通常,您希望有一个更具体的 WAR 文件名,通常包括构建版本,并将工作留给context.xml

    另一种方法是在 Tomcat 实例前面加上 HTTPD 实例。这也是大多数生产服务器所做的。除了其他优点外,您还可以配置 HTTPD 以显示特殊的“抱歉,此网站正在维护中,稍后再回来!”页面为 HTTP 503 错误页面,当您关闭/重新启动/重新部署 Tomcat 时会显示该页面。


    另一个问题是我将如何访问 Tomcat 服务器的根页面,而我之前可以在 localhost:8080 访问它?

    只需将apache-tomcat/webapps/ROOT 文件夹重命名为代表新上下文路径的所需名称。例如。 apache-tomcat/webapps/tomcathome 应该可以在 http://localhost:8080/tomcathome 上使用。

    【讨论】:

      【解决方案2】:

      我通常设置一个 apache2 网络服务器和一个 tomcat 服务器。然后我在 apache 端进行所有的 vhost 设置,并通过 mod_proxy 将特定域或路径的流量路由到 Tomcat 服务器的目标路径。这样您就可以访问您的 host.tld:8080 并根据需要设置您的域。

      所以基本上对 www.host.tld/welcome 的调用会导致 Apache 在内部将请求路由到 host.tld: 8080/myApp/welcome。

      HTH,很抱歉我必须使用手机的简短说明。

      【讨论】:

      • +1 谢谢马塞尔!但是我认为当我在这个服务器上只有一个应用程序时设置一个 apache2 网络服务器虽然它会工作但它会太多,但它就像在不是真的需要时引入一个额外的东西,不是吗?
      • 是的。但也有一些好处。例如,apache 是否更适合提供静态文件。使用此解决方案,您可以通过 apache 提供静态 JS 文件。
      猜你喜欢
      • 2018-02-06
      • 1970-01-01
      • 2011-09-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-24
      • 2011-01-13
      • 2014-02-12
      相关资源
      最近更新 更多