IIS 反向代理到 Apache、Tomcat

目录

  • 环境
  • 工具
  • 需求
  • 教程
    • 反向代理

IIS 反向代理可以将请求的网址重写到其它网址,达到转发的目的。一般用于一台服务器只允许开启80端口,而80端口又被IIS使用,此时需要在IIS中设置URL重写,将请求转发到指定 IP:端口 或网址

环境

WindowServer 2008 IIS7

Apache 集成在WampServer

Tomcat

测试程序:微擎(PHP) 、 某管理系统(Java)

工具

Application Request Routing(ARR x64)(ARR x32

URL Rewrite(x64 x32

需求

服务器只允许开放 80 端口,要求 IIS反向代理到其它服务器,使得 可以通过二级域名访问Apache/Tomcat服务。

假设一个环境:服务器中开启了IIS ,一级域名(test.com)可以访问到IIS的默认站点,但是我在Apache上运行着PHP的程序,所以想要通过二级域名(a.test.com)来访问到Apache的服务(127.0.0.1:808),通过二级域名(b.test.com)访问Tomcat(127.0.0.1:8080)

教程

反向代理

1. 在使用反向代理前,我们需要在IIS中安装 ARR 工具和 URL Rewrite

安装方法很简单,只需要打开上面两个工具的链接将它们下载下来并安装就可以了。

2. 不过还有另一个快捷的安装渠道,微软官方有一个叫做 Web平台安装程序 可以直接一键安装。

不过使用 Web平台安装程序 我遇到一个问题,界面一直在加载中无法进入安装程序界面。所以你如果无法加载的话,就用第一种方法

安装完成后打开IIS ,可以看到出现了两个功能( Application Routing RequestURL 重写

3. 打开 Application Request Routing 选择 Server Proxy Settings

4. 勾选 Enable proxy 。点应用后退出

5. 指定一个站点,对它进行URL重写

如 需要对 a.test.com 进入 URL重写,就点 a.test.com 站点中的URL重写功能

6. 添加规则 - 入站规则 - 空白规则

7. 添加配置

  • 名称随意
  • 模式写 ^(.*)
  • 添加条件 - 条件输入 {HTTP_HOST} 模式输入 ^a.test.com$
  • 操作类型默认重写
  • 重写URL :http://127.0.0.1:808/{R:1} ,这个链接表示要跳转的地址,如果你需要跳转到Tomcat则可以将端口改成8080

8. 保存好后,就可以直接在浏览器访问 a.test.com 了

总结

  • 如果需要反向代理Tomcat,只需要将URL重写地址写成Tomcat的链接就可以了
  • 我用WampServer的微擎测试程序时,可以重写到Apache,但是提交登录的时候会出现登录不上,但是在服务器中直接访问 Apache登录又可以登录。原因是 PHP的代码验证问题 。这种办法就修改下源码文件吧,或者你就不要用IIS的URL重写了,直接在IIS中配置一个PHP的请求映射,在IIS中运行PHP

原文地址:https://www.cnblogs.com/selier/p/9533382.html

时间: 2024-11-05 00:50:20

IIS 反向代理到 Apache、Tomcat的相关文章

IIS反向代理404错误

IIS反向代理不是什么新鲜事,网上也能找到一大堆的教程.但是都基本一致. 我也是第一次使用IIS反向代理,按照以下教程来配置. http://www.cnblogs.com/dreamer-fish/p/3911953.html http://www.cnblogs.com/leven/archive/2009/11/10/Proxy_Application_Request_Routin.html 但配置没有任何问题,和大部分网上教程一样,下载并安装Application Request Rou

nginx 反向代理 与 Apache backend的配置联合配置

nginx 反向代理 与 Apache backend的配置联合配置: 说明: nginx 将http映射到Apache上的特定子目录. 配置方法步骤: 1.  设置域名, 子域名映射到指定服务器ip, 2. nginx设置好server ,以及对应的目录, 或者 转发到指定Apache端口. server { listen 80 default_server; listen [::]:80 default_server ipv6only=on; root /usr/share/nginx/ht

ASP.NET基于IIS反向代理实现Web负载均衡实战演练

一.课程介绍 随着公司业务的发展,后台.NET Web应用程序业务就变的越来越多,然而服务器的故障,时不时的汹涌而至,单点故障让我们防不胜防.由于客户访问量逐渐增多,单一个WEB站点(MVC.WebApi)响应越来越慢,由于我们的业务都是采用.NET Web应用程序部署托管在IIS上,那么如何实现我们流量的削峰谷平,应用程序的横向扩展,从而来提高单台WEB站点的吞吐量,降低了单台Web站点的压力. 这我们里决定采用微软的负载均衡解决方案,用两台WEB服务器供客户访问,这两台服务器提供相同的站点内

Nginx +iis反向代理

一:简介      Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行.由俄罗斯的程序设计师Igor Sysoev所开发,供俄国大型的入口网站及搜索引擎Rambler(俄文:Рамблер)使用.其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好. 二:此次安装的是一个运行在windows上的反向代理服务器,主要和iis配合使用 直接启动exe文件即可 注意: 文件夹不能

nginx反向代理到后端tomcat,并将IP地址发送到后端的配置

nginx反向代理到后端,并将IP地址发送到后端的tomcat上. 假设我们的网站叫demo.demo.com 前端Nginx配置如下: /usr/local/nginx/conf/nginx.conf 在http段加上下面4行:     proxy_set_header X-Forwarded-For $remote_addr;     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;     proxy_set_head

Linux中Nginx反向代理下的tomcat集群

Nginx具有反向代理(注意和正向代理的区别)和负载均衡等特点. 这次Nginx安装在 192.168.1.108 这台linux 机器上.安装Nginx 先要装openssl库,gcc,PCRE,zlib库等. Tomcat 安装在192.168.1.168 和 192.168.1.178 这两台机器上.客户端通过访问192.168.1.108 反向代理访问到 192.168.1.168 和 192.168.1.178 里Tomcat 部署的工程内容. 1.Linux 下安装Nginx (机器

Visual SVN IIS反向代理设置

需要解决的问题: 1. 设置反向代理 2. 解决部分后缀文件无法提交的问题 1. 设置反向代理 接收所有的URL 允许所有的HTTP_HOST 跳转到被代理的服务器 2. 允许所有后缀的文件访问IIS服务器 清楚所有IIS默认的fileExtensions <security> <requestFiltering> <fileExtensions> <clear/> </fileExtensions> </requestFiltering&

IIS反向代理/Rewrite/https卸载配置

目标,使IIS具有类似与Nginx的功能,将指定域名的请求重定向到IIS内.IIS外.其他机器上的其他端口,并且实现https卸载功能 重点预告: 1.安装最新版urlrewrite(微软开发的)插件 2.安装最新版ARR插件(Application Request Routing) 3.添加重定向规则 4.流量:外网==>IIS==>指定网站==>UrlRewrite==>ARR==>你的目标程序的url 如果只转发到IIS内网站,则不需要ARR.如果要转发到其他程序或机器

nginx + IIS 反向代理

简化拓扑如图 我们这里只简单为描述原理来说明反向代理的过程 前端nginx反向代理true IIS server nginx反向代理配置代码如下.这里我只摘取其中一server,主要在header头,当后端只有一台IIS服务器且运行多个虚拟主机的时候适用. server { listen 80; server_name site1.cxsz.com; #charset koi8-r; #access_log logs/host.access.log main; location / { prox