利用Weblogic的iisproxy、iisforward插件实现IIS转发

简介: 默认情况下,IIS只能提供http重定向功能,而无法满足转发需求。 举例:http://localhost/app1 利用http重定向到 http://www.abc.com/app1 访问 http://loalhost/app1/abc.html 最终浏览器地址栏里的url会变成http://www.abc.com/app1/abc.html 这就是重定向(类似jsp中的SendRedirect),如果浏览器地址栏不变,那才叫转发(类似jsp中的forward)。

默认情况下,IIS只能提供http重定向功能,而无法满足转发需求。

举例:http://localhost/app1 利用http重定向到 http://www.abc.com/app1

访问 http://loalhost/app1/abc.html 最终浏览器地址栏里的url会变成http://www.abc.com/app1/abc.html

这就是重定向(类似jsp中的SendRedirect)如果浏览器地址栏不变,那才叫转发(类似jsp中的forward)。

通常weblogic/jboss应用,前端都是通过apache来转发的,但利用weblogic提供的插件,IIS也能实现类似的功能

weblogic安装目录下X:\Oracle\Middleware\wlserver_10.3\server\plugin\win\x64 下有2个文件:iisforward.dll、iisproxy.dll,通过它可以让IIS实现转发。 

步骤:

1、在指定位置创建站点根目录,比如:D:\website\ ,并将iisforward.dll复制到此

 

2、根目录下,再创建子应用目录,比如app1,即:D:\website\app1,然后将iisproxy.dll复制一份到该目录,创建一个名为iisproxy.ini的文件,内容参考下面:

1 WebLogicHost=localhost
2 WebLogicPort=8080
3 ConnectTimeoutSecs=20
4 ConnectRetrySecs=2
5 Debug=ON
6 WlForwardPath=/app1

解释一下:

第1行,表示weblogic(或jboss)等其它webserver的IP地址

第2行,表示weblogic(或jboss)等其它webserver的端口

第6行,表示weblogic(或jboss)等其它webserver上对应的app的contextPath

 

3、在D:\website\下,新建一个iisforward.ini,内容参考下面:

1 vhost1=localhost:80
2 localhost:80=D:\Website\app1\iisproxy.ini

第1行,表示iis server对应的ip和端口
第2行,指定vhost1对应的配置从D:\Website\app1下的iisproxy.ini读取

如果有多个虚拟主机,参考这个结构再继续添加即可

 

4.在IIS中,添加应用程序集app1,同时在要转发的站点下,添加应用程序app1

 

5.在要代理的站点上,添加"ISAPI筛选器"

参考下图:

 

6.在应用app1上,添加"处理程序映射"

参考下图:

最后还可以检查一下

正常的话,应该可以看到刚才添加的处理程序,状态为允许,如果状态不是允许,请手动调整为允许状态

7、iisreset /restart 重启IIS

打完收工!

 

附目录结构:

D:\Website\
│  iisforward.dll
│  iisforward.ini

├─app1
│      iisproxy.dll
│      iisproxy.ini
│      web.config

└─app2
        iisproxy.dll
        iisproxy.ini
        web.config

注:web.config 是添加完映射处理程序后,iis自动生成的,内容为:

1 <?xml version="1.0" encoding="UTF-8"?>
2 <configuration>
3     <system.webServer>
4         <handlers>
5             <add name="weblogic iis proxy" path="*" verb="*" modules="IsapiModule" scriptProcessor="D:\website\app1\iisproxy.dll" resourceType="Unspecified" preCondition="bitness64" />
6         </handlers>
7     </system.webServer>
8 </configuration>

一切顺利的话,就能看到效果了:

这是jboss上的原始应用app1

 

这是经iis转发后的效果:

目录
相关文章
|
Oracle 关系型数据库 Java
EOS Platform 7.2下安装weblogic插件
在实际工作中,需要用到EOS Platform,这是一个基于Eclipse的开发工具,自带了Tomcat,可以满足大部分需要,但是有时候需要使用Weblogic,这就得手动安装Weblogic插件了。这个过程与Eclipse相同(Eclipse下安装weblogic插件),本文中在EOS Platform 7.2中安装Weblogic插件。
152 0
EOS Platform 7.2下安装weblogic插件
|
Oracle 关系型数据库 Java
Eclipse下安装weblogic插件
安装好weblogic dev版本(Windows下安装weblogic dev版本),可以在Eclipse中安装weblogic server tools插件,直接连接到weblogic server,发布、部署、调试都变得简单些。
606 0
Eclipse下安装weblogic插件
|
应用服务中间件 Android开发
使用WebLogic的OTN插件时Eclipse控制台输出中文乱码解决方法
  使用WebLogic时控制台输出中文乱码解决方法1.找到weblogic安装目录,当前项目配置的domain2.找到startWebLogic.cmd文件3.打开文件,在“call "%DOMAIN_HOME%\bin\startWebLogic.cmd" %*”上面增加如下代码即可,主要是设置UTF-8啊。 @ECHO OFF @REM WARNING: This file is
1211 0
|
应用服务中间件 Android开发 程序员
Eclipse插件之WebLogic Plugin 1.1.1
Eclipse插件之WebLogic Plugin 1.1.1 http://iamin.blogdriver.com/iamin/1174439.html 本文介绍如何利用Eclipse插件WebLogic Plugin在Eclipse中的使用。 Eclipse是目前非常流行的开发平台,开放扩展的架构让很多程序员找到了自己个性化的工作环境。 问题提出:WebLogic目前是使用比较多
1064 0
|
应用服务中间件 Android开发 程序员
Eclipse插件之WebLogic Plugin 2.0.0
Eclipse插件之WebLogic Plugin 2.0.0 http://iamin.blogdriver.com/iamin/1174442.html 本文介绍如何利用Eclipse插件WebLogic Plugin在Eclipse中的使用。 Eclipse是目前非常流行的开发平台,开放扩展的架构让很多程序员找到了自己个性化的工作环境。 问题提出:WebLogic目前是使用比较多
1112 0
|
应用服务中间件 Android开发 数据安全/隐私保护
解决掉Eclipse插件之WebLogic Plugin 2.0.0的BUG
解决掉Eclipse插件之WebLogic Plugin 2.0.0的BUG http://iamin.blogdriver.com/iamin/1176540.html Eclipse插件之WebLogic Plugin 2.0.0操作说明及BUG请见:http://iamin.blogdriver.com/iamin/1174442.htmlhttp://dev2dev.bea.com
1328 0
|
7月前
|
Web App开发 安全 Java
WebLogic Server 远程代码执行漏洞(CVE-2021-2109)
WebLogic Server 远程代码执行漏洞,攻击者可通过使用恶意Payload对目标服务器实施攻击并接管服务器获取执行权限。
80 1