
The web server plugin is used to create a communication channel between IBMs IHS web server and a WebSphere application server.
This assumes you have already done the following:
- Installed IHS web server
- Installed the web server plugin (plugin-cfg.xml) package
- Added IHS web server to the dmgr
- Configure applications to use one or more application servers and the IHS web server
Generating the web server plugin creates/updates the plugin XML file (plugin-cfg.xml).
It is important to recognize that you may have two (or more) plugin-cfg.xml files.
- global plugin-cfg.xml file that would be used by all of the IHS HTTP servers that have been added in your WebSphere admin console
- dedicated plugin-cfg xml file(s), one for each IHS HTTP server that has been added in your WebSphere admin console
There are various ways to go about generating the global or dedicated plugin-cfg.xml files.
- global or dedicated - Generate web server plugin (plugin-cfg.xml) using GenPluginCfg
- dedicated - Generate web server plugin (plugin-cfg.xml) using wsadmin
- dedicated - Generate web server plugin (plugin-cfg.xml) using wsadmin and httpPluginManagement.py
- global or dedicated - Generate web server plugin (plugin-cfg.xml) using the dmgr (this article)
- dedicated - Generate web server plugin (plugin-cfg.xml) using the PCT command
In the WebSphere admin console, at Servers > Server types > Web servers > your web server, check marking a web server and clicking on the generate plugin button should generate the dedicated plugin-cfg xml file for the web server. In other words, this does not generate the global plugin-cfg.xml file.
In the WebSphere admin console, Environment > Update global web server plug-in configuration can be used to generate the global plugin-cfg.xml file.
The global web server plugin is located at:
${WAS_INSTALL_ROOT}/profiles/your_profile/config/cells/plugin-cfg.xml
The dedicated plugin-cfg xml file should be located at located at
${WAS_INSTALL_ROOT}/profiles/your_profile/config/cells/your_cell/nodes/your_node/servers/your_server/plugin-cfg.xml
Automatically generate the plugin-cfg.xml file
In the left panel of the dmgr, expand Servers > Server types > Web servers > your web server > Plug-in properties. If Automatically generate the plug-in configuration file is checked, then the ${WAS_INSTALL_ROOT}/profiles/your_profile/config/cells/your_cell/nodes/your_node/servers/your_server/plugin-cfg.xml file will be updated when a change is made to the master configuration file.
Manually generate the plugin-cfg.xml file
If you are using the global web server plugin, select Environment > Update global web server plug-in configuration > Overwrite to manually regenerate the plugin-cfg.xml file.
If you are using unique plugin-cfg.xml files and "Automatically generate the plug-in configuration file" is not checked, at Servers > Server types > Web servers, check mark the web server and select Generate Plug-In. In this example, after generating the plugin, the location of the updated plugin-cfg.xml file is displayed.
Validation
To verify that the plugin-cfg.xml file was successfully generated, you can check for event PLGC0052I in the deployment managers HPEL or SystemOut log.
PLGC0052I: Plug-in configuration file generation is complete for the Web server. yourCell01.yourNode.yourWebServer
You can view the plugin in the dmgr. The plugin-cfg.xml file should now have the context root of the app being requested, which is /beta in this example.
<UriGroup Name="default_host_yourCluster_URIs">
<Uri Name="/beta/*"/>
</UriGroup>
In this example, URI /beta maps to the UriGroup named default_host_yourCluster_URIs. There should be a routing tag that contains the UriGroup, and this will list the cluster that the app is in, as well as the virtual host being used. You will want to ensure that the application resides in the cluster. Typically, virtual host "default_host" is used.
<Route ServerCluster="yourCluster" UriGroup="default_host_yourCluster_URIs" VirtualHostGroup="default_host"/>
You can also ensure that the ports listed for the default_host are the ports that the web server and WebSphere application server are using for the app.
<VirtualHostGroup Name="default_host">
<VirtualHost Name="*:80"/>
<VirtualHost Name="*:443"/>
<VirtualHost Name="*:9080"/>
<VirtualHost Name="*:9081"/>
<VirtualHost Name="*:9443"/>
<VirtualHost Name="*:9444"/>
</VirtualHostGroup>
After the web server plugin has been generated you would next propagate the plugin.
- Propagate web server plugin (plugin-cfg.xml) using the dmgr
- Propagate web server plugin (plugin-cfg.xml) using GenPluginCfg
- Propagate web server plugin (plugin-cfg.xml) using wsadmin
- Propagate web server plugin (plugin-cfg.xml) using wsadmin and httpPluginManagement.py
- Propagate web server plugin (plugin-cfg.xml) using configurewebservername.sh
Did you find this article helpful?
If so, consider buying me a coffee over at