IIS 7 + Tomcat 7 - 如何在 http://my_app.local 下访问 http://localhost:8080/my_app

IIS 7 + Tomcat 7 - 如何在 http://my_app.local 下访问 http://localhost:8080/my_app

简单来说:

IIS 7+Apache Tomcat 7+ isapi_redirect.dll

我在 下有一个已部署并正在运行的 Tomcat 应用程序http://localhost:8080/my_app
我希望在 下看到相同的内容http://my_app.local(而不是默认的 Tomcat 站点 [您可以在下面看到])。
我设置了isapi_redirect.dll,所以现在my_app.local的内容等于localhost:8080,但这还不够,我想映射localhost:8080/my_app到 下my_app.local。(我确实有127.0.0.1 my_app.localhosts 文件,所以我已经可以打开my_app.local,但现在它只显示默认的 Tomcat 站点(与 下可用的相同http://localhost:8080))。

请阅读我已经尝试过的内容:


更长的解释是:

我有IIS 7(7.5.7600.16385)和阿帕奇 Tomcat/7.0.22已安装。

  1. 我在 Tomcat 中部署了一个应用程序(我们称之为“ my_app”),现在可以在 上访问http://localhost:8080/my_app,运行良好。我在 IIS 面板中添加了一个新网站,其中包含部署的 Tomcat 的路径my_app,如下所示:“ c:\Program Files\Apache Software Foundation\Tomcat 7.0\webapps\my_app
  2. 我绑定了主机名my_app.local
  3. 之后我配置isapi_redirect.dll如下(或者 )。
  4. 现在,当我打开时http://my_app.local,我可以看到默认的 Tomcat 站点(见下文),它与下的内容相同http://localhost:8080/!!(这就是问题所在!!!)
  5. http://my_app.local我希望看到与下相同的内容http://localhost:8080/my_app

我该怎么做?提前谢谢您!

我的配置文件:

在此处输入图片描述



更新

我也发现了这一点:http://tomcat.apache.org/connectors-doc/generic_howto/proxy.html

情况 B:您需要隐藏发往应用程序的所有请求的路径组件。以下是针对这种情况的解决方案,其中您想要隐藏第一个路径组件 /myapp。更复杂的操作留给读者作为练习。首先是针对 Apache httpd 情况的解决方案:

  1. 使用 mod_rewrite 将 /myapp 添加到所有请求,然后转发到后端:[...]
  2. 使用 mod_headers 重写您的应用程序可能返回的任何 HTTP 重定向。[...]
  3. 再次使用 mod_headers 来重写您的应用程序可能设置的任何 cookie 中包含的路径。[...]

如果您使用 Microsoft IIS作为一个 Web 服务器,ISAPI 插件提供了一种使用内置功能执行第一步的方法。您定义一个映射文件对于简单的前缀更改,如下所示:

# Add a context prefix to all requests ...
/=/myapp/
# ... or change some prefix ...
/oldapp/=/myapp/

然后将文件的名称放入rewrite_rule_file注册表或isapi_redirect.properties文件的条目中。在您的 uriworkermap.properties文件中,您仍然需要在重写之前按原样映射 URL![...]
不支持步骤 2(重写重定向响应)或步骤 3(重写 cookie 路径)。

令我惊讶的是,它写道“不支持步骤 2(重写重定向响应)或步骤 3(重写 cookie 路径)。“,我不知道这是否仍然正确,但那又怎样?我又陷入困境了吗?

答案1

根据你的目标(容易记住的网址?),也许可以重定向我的_app.本地->我的_app.本地:8080/我的_app?

这不会隐藏但是,目标站点。

在 my_app.local 设置一个新的 IIS 站点,并让它重定向到您的 :8080/my_app 应用程序。

http://technet.microsoft.com/en-us/library/cc732930(WS.10).aspx

答案2

你可以尝试这个: http://blogs.iis.net/carlosag/archive/2010/04/01/setting-up-a-reverse-proxy-using-iis-url-rewrite-and-arr.aspx

这似乎就是您所需要的,URL 重写和应用程序路由。

相关内容