IBM Support

IIS - Configuring the WebSphere Application Server Web server plug-in for multiple websites

Question & Answer


Question

Internet Information Services (IIS) has the ability to run multiple websites within a single IIS server. Given this ability, can the WebSphere Application Server web server plug-in software be used with multiple IIS websites?

Answer

Yes. Using the plug-in with multiple IIS websites is supported, but requires that each website loads its own instance of the plug-in. The following guide provides a detailed example for configuring the plug-in with two IIS websites.

Prerequisites
* The following guide is meant as a post-install configuration. The WebSphere Customization Toolbox Plug-in Configuration tool must be used to configure the first site.

Creating the directory structure

In the following example, the initial plug-in was installed in directory:
C:\IBM\WebSphere\Plugins

  1. From Windows Explorer, navigate to the plug-in installation root and expand the bin, config, and logs subdirectories as shown:
    Plug-in directory structure
  2. Under each of the expanded directories (bin, config, logs), create a copy of the current website-specific subdirectory as shown:
    Replicated directories
  3. In this example, the original (webserver1) directories represent the first website and the directory is copied for the second website. While the directory copy can be given any name without spaces, in this example, we name the copy the webserver2 directory.


     
Updating plug-in files
 
  1. Under the ..\bin\IIS_webserver2 directory, open the plugin-cfg.loc file in a text editor. Currently, the file points to the plugin-cfg.xml file in the config\webserver1 directory.
     
    C:\IBM\WebSphere\Plugins\config\webserver1\plugin-cfg.xml

    Change the webserver1 to webserver2.
     
    C:\IBM\WebSphere\Plugins\config\webserver2\plugin-cfg.xml

    Save the file and exit the editor.
     
  2. Delete the iisWASPlugin_http.dll module in the ..\bin\webserver2 directory.  
    del C:\IBM\WebSphere\Plugins\bin\webserver2\iisWASPlugin_http.dll

     
  3. Create a symbolic link to the ..\bin\webserver1\iisWASPlugin_http.dll file. 
    mklink /d C:\IBM\WebSphere\Plugins\bin\IIS_webserver2\iisWASPlugin_http.dll C:\IBM\WebSphere\Plugins\bin\IIS_webserver1\iisWASPlugin_http.dll

     
  4. Under the ..\config\webserver2 directory, open the plugin-cfg.xml file in a text editor. The "Name" parameter of the <Log> tag indicates the logs\webserver1 directory:
     
    <Log LogLevel="Error" Name="C:\IBM\WebSphere\Plugins\logs\webserver1\http_plugin.log"/>

    Change the text from logs\webserver1 to logs\webserver2.
     
    <Log LogLevel="Error" Name="C:\IBM\WebSphere\Plugins\logs\webserver2\http_plugin.log"/>

    Save the file and exit the editor.
     
Updating the IIS configuration

This section includes required settings that must be verified. The initial configuration performed with the Plug-in Configuration tool sets these values. This section assumes that the two IIS websites intended for use with the plug-in exist.

 
  1. Launch the IIS Administrative Console software.
     
  2. From the connections pane, select the Server node. Double-click the "ISAPI Filters" selection from the features pane and remove any filters, which point to the plug-in library (iisWASPlugin_http.dll). Example:


     
  3. From the connections pane, expand the Server node, right-click the "Application Pools" node, select the "Add Application Pool" option.
     
    1. Enter a name relevant for the first website (for example. webserver1AppPool). Accept the remaining default values and select the OK option.
       
    2. Repeat this step, creating a second application pool with a name relevant for the second website (for example. webserver2AppPool).

      Example:


       
  4. From the connections pane, expand the "Sites" node and select the first website intended for the plug-in.
     
    1. From the actions pane, click "Basic Settings".
       
    2. Click the "Select" button and change the "Application pool" drop-down to point to the Application Pool that was created for the first website:


       
    3. Select the OK option on this panel and the next panel.
       
    4. From the features pane, double-click "ISAPI Filters", then click "Add" from the actions pane.
       
    5. For the "Filter name" value, enter iisWASPlugin.
       
    6. For the "Executable" value, browse and select the iisWASPlugin_http.dll that is used for the first website:


       
    7. Click OK.
       
    8. Repeat this entire step for the second website making sure to choose the relevant Application Pool and iisWASPlugin_http.dll:





       
  5. From the connections pane, right-click the first website and select "Add Virtual Directory".
     
    1. For the "Alias" value, enter sePlugins.
       
    2. For the "Physical path" value, browse and select the directory containing the iisWASPlugin_http.dll for the first website:


       
    3. Click OK.
       
    4. From the connections pane, select the 'sePlugins' virtual directory that was previously created.
       
    5. From the features pane, double-click "Handler Mappings", then click "Edit Feature Permissions" from the actions pane.
       
    6. Ensure "Script" and "Execute" are checked:


       
    7. Click OK.
       
    8. Repeat this entire step for the second website making sure to choose the relevant iisWASPlugin_http.dll directory:


       
  6. From the connections pane, select the Server node. From the features pane, double-click "ISAPI and CGI Restrictions", then click "Add" from the actions pane.
     
    1. For the "ISAPI or CGI Path" value, browse and select the iisWASPlugin_http.dll that is used for the first website.
       
    2. For the "Description" value, enter WASPlugin.
       
    3. Put a checkmark next to "Allow extension path to execute" and click OK.
       
    4. Click "Add" again.
       
    5. For the "ISAPI or CGI Path" value, browse and select the iisWASPlugin_http.dll that is used for the second website.
       
    6. For the "Description" value, again enter WASPlugin.
       
    7. Put a checkmark next to "Allow extension path to execute" and click OK.

      Example:


       
  7. Close the IIS Administrative Console software and restart the following services:

    "IIS Admin Service"
    "World Wide Web Publishing Service"
     
Pre-Deployment

Because each IIS website uses its own independent plug-in configuration, most WebSphere Application Server deployments require a unique "Web server" definition for each website. The unique definitions enable the Application Server to generate separate plugin-cfg.xml files that allow each website to have its own independent set of application mappings.

For more information:

WebSphere Application Server 9.0

WebSphere Application Server 8.5

[{"Line of Business":{"code":"LOB45","label":"Automation"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSEQTP","label":"WebSphere Application Server"},"ARM Category":[{"code":"a8m50000000CdFyAAK","label":"WebSphere HTTP Plugin-\u003EPLG.Configuration\/Questions-\u003EConfiguration to a web server (IIS, SunOne, Domino, etc.)-\u003EPCT"}],"ARM Case Number":"","Platform":[{"code":"PF033","label":"Windows"}],"Version":"8.5.0;8.5.5;9.0.0;9.0.5"}]

Document Information

Modified date:
23 December 2021

UID

swg21366887