【问题标题】:How to shorten URL address in JSP如何在 JSP 中缩短 URL 地址
【发布时间】:2018-05-14 11:38:43
【问题描述】:

我有一个关于在使用 Java Servlet 时缩短 URL 地址的问题。我需要缩短地址,例如www.IPaddress.com:8181/JSP/Index.jsp 只是到 www.IPaddress.com 没有端口号 (8181) 和 .jsp 扩展名。甚至有可能做这样的事情吗?我在 Eclipse IDE 中开发了这个 Servlet 应用程序,我正在使用 Apache Tomcat 8。

【问题讨论】:

  • 如果不指定端口,则假定为80
  • @MauricePerry 是的,我担心会出现这个问题,如果 URL 地址中不存在端口,则会自动采用 8080 端口。但是,如果有某种方法可以在 web.xml 或其他地方的某处将端口设置为 8181 并将 URL 地址缩短为 www.example.com
  • 是 80,不是 8080,我能想到的唯一方法就是在你的服务器前面放置一个反向代理。
  • 你应该能够使用 apache 或其他服务器并重写 url 已经有一段时间了,我不记得具体怎么做,但你可以研究一下
  • 正如 John Kane 所写,http 协议使用端口 80,https 使用端口 443。如果您的服务器在不同的端口上运行,则必须指定端口。处理这个问题的常用方法是在你的应用服务器前面设置一个 http 服务器,并将其配置为reverse proxyHere 是一个非常好的(虽然有点过时)指南,如何使用 Tomcat 和 Apache HTTPD 做到这一点。

标签: java html jsp tomcat


【解决方案1】:

通常这种映射可以通过在像apache这样的Web服务器中创建一个虚拟主机并根据需要将其映射到重定向不同的主机来实现。

仅使用 tomcat 我尝试了以下步骤并达到了您的要求。

  1. 修改你的 tomcat 的 server.xml 以将主机的上下文路径删除为空白,如下所示

    <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"> <Context path="" docBase="PATH_OF_YOUR_TOMCAT/webapps/YOU_APPLICATION_NAME"/>

  2. 您必须使用端口 80 运行您的 tomcat 才能从 URL 中删除该端口。因此,您可以将 server.xml 中的现有端口更改为 80,或者在您的 tomcat 的 server.xml 中添加一个端口为 80 的连接器。即在这种情况下,您的 tomcat 将同时侦听 8181 和 80。确保使用重新启动 tomcat admin 作为端口 80 是一个特权端口。

    <Connector port="80" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
    

    <Connector port="8181" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />

按照上述 2 个步骤后,您应该可以使用以下方式访问您的应用程序 http://localhost/index.jsp

  1. 现在您可以使用UrlRewriteFilter 在请求和响应中隐藏 JSP 扩展,或者可以使用如下所示的 servlet 映射

    <servlet> <servlet-name>ServletName</servlet-name> <jsp-file>some.jsp</jsp-file> </servlet> <servlet-mapping> <servlet-name>ServletName</servlet-name> <url-pattern>/somelink</url-pattern> </servlet-mapping>

您也可以将 index.jsp 作为欢迎文件列表放在 web.xml 中,如下所示

<welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
 </welcome-file-list>

现在您应该可以按照以下方式访问您的应用程序了 你的要求http://localhost

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-18
    • 2014-07-11
    相关资源
    最近更新 更多