To configure the WLS proxy for IIS, the first thing to do is to place the iisproxy.dll, iisforward.dll and iisproxy.ini in the root folder of the website.
In this example, I use the Default Website that is installed with IIS. So the above files are copied into its root directory, which isC:\Inetpub\wwwroot\.
NOTE: For a smooth working of the configuration, always copy the iisforward.dll and iisproxy.dll into the root directory of the Web Site. Otherwise, loading the iisforward.dll module will fail due to permission issues.
NOTE: The iisforward.dll file was removed from the IIS plug-in at the 126.96.36.199 release, and is not needed in the current versions of the plug-in.
The iisproxy.ini has the following parameters:
WebLogicHost=<dns name or ip address>
WebLogicPort=<litening port for WLS> This is 7001 in the examples.
WlForwardPath=/examplesWebApp WlForward is the web application you want to proxy to in this example, If all web applications are to proxy to WebLogic Server just use WlForwardPath=/
Debug=ALL Optional and used to collect debug information. It is logged by default in c:\TEMP\wlproxy.log
DebugConfigInfo=ON DebugConfigInfo is also is only used for debugging, the default is OFF.
Also note the WebLogicCluster=myweblogic.com:7001,yourweblogic.com:7001 line if you are using clusters. This replaces the WebLogicHost and WeLogicPort entries.
This is a sample output from the directory/folder in which iisproxy.dll, iisforward.dll and iisproxy.ini is placed:
Directory of C:\inetpub\wwwroot
04/30/2011 08:34 AM . 04/30/2011 08:34 AM .. 04/22/2011 09:44 PM 20,480 iisforward.dll 04/22/2011 09:45 PM 626,176 iisproxy.dll 04/30/2011 05:21 AM 182 iisproxy.ini 04/30/2011 08:17 AM 689 iisstart.htm 04/27/2011 06:10 AM 168 web.config 04/30/2011 08:17 AM 184,946 welcome.png 6 File(s) 832,641 bytes 2 Dir(s) 15,052,578,816 bytes free
And here is how it looks from IIS 7.0 (Default Web Site -> Content View)
If you do not see the ISAPI Filter icon in the Feature View, go to “Server Manager” in thee left pane under Roles and click on Web Server (IIS). Then click on “Add Role Services” on the Right pane. Then check “ISAPI Filters” and “ISAPI Extensions” and click “Next” and then click on Install.
Now go back to IIS 7.0 and click on the Default Web Site as shown below:
Click on the ISAPI filters icon in Features View. In the right pane click on Add. Enter any name of your choice for filter name. Click browse (…), select iisforward.dll from C:/inetpub/wwwroot, and then OK.
Next go back to Default Web Site and click on “Handler Mappings.”
Click on “Add Script Map…” on the right-hand-side menu options. Enter * for the Request path. Browse to the iisproxy.dll file and add it as the executable. Name it “proxy.”
– Click on the “Request Restrictions…” button and uncheck the box titled “Invoke handler only if the request is mapped to.”
Click OK to add this Handler mapping. Click “Yes” on the Add Script Map dialog box.
Similarly, if you want to configure proxying by path, click on Add Script Map, give the Request path as “.wlforward” and select the executable as iisproxy.dll. Click on the “Request Restrictions…” button and uncheck the box titled “Invoke handler only if the request is mapped to.” Click OK to add this Handler mapping. Click “Yes” on the Add Script Map dialog box.
Click on the Root node of the IIS Manager tree and click on the ISAPI and CGI Restrictions.
Then click on “Edit Feature Settings” on the right hand side menu options. Check the “Allow unspecified ISAPI modules” checkbox and click OK.
Restart IIS. Go to Default Web Site and click on Restart on the right-hand-side menu. Now access the Example web application through IIS at http://localhost/examplesWebApp