After installing a supported Web server, you must install a binary plug-in module for the Web server. The plug-in module lets the Web server communicate with the application server. The Plug-ins installation wizard installs the Web server plug-in. The wizard configures the Web server. The wizard also creates a Web server definition in the configuration of the application server.
Web server configuration file
The binary Web server plug-in file
See Web server plug-ins for a description of the binary plug-in module. An example of a binary plug-in module is the mod_ibm_app_server_http.dll file for IBM HTTP Server on the Windows platform.
The binary plug-in file does not change. However, the configuration file for the binary plug-in is an XML file. The application server changes the configuration file whenever you change the configuration of deployed applications.
The binary module reads the XML file to adjust settings and to locate deployed applications for the Web server.
The plug-in configuration file, plugin-cfg.xml
The plug-in configuration file is an XML file with settings that you can tune in the administrative console. The file lists all of the applications installed on the Web server definition. The binary module reads the XML file to adjust settings and to locate applications for the Web server.
The stand-alone application server regenerates the plugin-cfg.xml file in the install_root/profiles/profile_name/config/cells/cell_name/nodes/Web_server_name_node/servers/Web_server_name directory. Regeneration occurs whenever a change occurs in the application server configuration that affects deployed applications.
After regeneration, you must propagate (copy) the file to the Web server machine. The binary plug-in then has access to the most current copy of its configuration file.
The Version 6 Web server plug-in configuration service automatically regenerates the plugin-cfg.xml file whenever the configuration changes. The configuration service automatically propagates the plugin-cfg.xml file to an IBM HTTP Server machine. You must manually copy the file on other Web servers.
See Web server plug-in configuration service properties settings for more information.
Default plug-in configuration file, plugin-cfg.xml
The Plug-ins installation wizard creates the temporary plugin-cfg.xml file in the plugins_install_root/Plugins/config/Web_server_name directory. The wizard creates the file for every remote installation scenario. The wizard creates the file at the same time that it installs the binary plug-in module for the Web server.
The default file is a placeholder that you must replace with the plugin-cfg.xml file from the Web server definition on the application server. The default file is a replica of the file that the application server creates for a default stand-alone application server that has the samples installed.
Run the configureWeb_server_name script from the was_install_root/bin directory of the application server machine for a remote installation, or directly from the plugins_install_root/bin directory for a local installation. The script creates the Web server definition in the configuration files of the default profile. To configure a different profile than the default, edit the configureWeb_server_name script. Use the -profileName parameter to identify a different profile than the default.
After the Web server definition is created, the Web server plug-in configuration service within the application server creates the first plugin-cfg.xml file in the Web server definition on the application server machine. If you install an application, create a virtual host, or do anything that changes the configuration, you must propagate the updated plugin-cfg.xml file from the application server machine to the Web server machine to replace the default file.
The configureWeb_server_name script
The Plug-ins installation wizard creates the configureWeb_server_name script on the Web server machine in the plugins_install_root/bin directory. If one machine in a remote scenario is running under Linux or UNIX and the other machine is running under Windows, use the script created in the install_root/Plugins/bin/crossPlatformScripts directory. The script is created for remote installation scenarios only.
Copy the script from the Web server machine to the was_install_root/bin directory on a remote application server machine. You do not have to copy the script on a local installation. Run the script to create a Web server definition in the configuration of the application server.
The problem is a potential conflict between a shell environment variable, the WAS_USER_SCRIPT environment variable, and the actual default profile. The script always works against the default profile. However, if the WAS_USER_SCRIPT environment variable is set, a conflict arises as the script attempts to work on the profile identified by the variable.
The variable is easy to set accidentally. Issue any command from the profiles_install_root/profile_name/bin directory of any profile and the variable is set to that profile.
If you have more than one profile on your system, the potential exists that the default profile and the profile identified by the variable are different profiles. If so, a conflict occurs and the script might not create the Web server definition in the correct profile, or might not create the Web server definition at all.
If a Web server definition already exists for a stand-alone application server, running the script does not add a new Web server definition. Each stand-alone application server can have only one Web server definition.
set webserverName webserver1 set webserverNodeSuffix _node set webserverNodeName $webserverName$webserverNodeSuffix $AdminConfig remove [$AdminConfig getid /Node:$webserverNodeName/Server:$webserverName] $AdminConfig remove [$AdminConfig getid /Node:$webserverNodeName] $AdminConfig save
Replacing the default plug-in configuration file with the file from the Web server definition (propagation)
The default file uses the following fixed parameter values that might not match the parameter values in the actual file on the application server. The default file is a placeholder only.
The file cannot reflect changes that occur in the application server configuration. The file also cannot reflect non-default values that might be in effect on the application server.
The application server must have the following values in the actual plugin-cfg.xml file. If so, the default file can successfully configure the binary plug-in module. Then, the plug-in module can successfully communicate with the Web server and the application server.
Suppose that the application server does not have the following values in the actual plugin-cfg.xml file. In that case, the default file configures the binary plug-in module incorrectly. The plug-in module can always communicate with the Web server. But with an improper configuration file, the plug-in module cannot communicate successfully with the application server.
Fixed parameter values in the temporary plug-in configuration file
The default_host value is the default virtual host. This virtual host is configured to serve the DefaultApplication and the Sample applications. This value is probably the same as the value in the real plugin-cfg.xml file. However, suppose that you create another virtual host for serving applications and install the DefaultApplication on it. If so, the actual plugin-cfg.xml file is regenerated. The Web server cannot access the DefaultApplication. (The application includes the snoop servlet and the hitcount servlet.)
To access applications on the new virtual host, propagate the real plugin-cfg.xml file. Propagation is copying the updated file from the application server machine to the Web server machine.
The 9080 value is the default value for the HTTP transport port for the default_host virtual host. This value is probably the same as the value in the updated file. However, this value changes for every profile on the application server machine. The HTTP transport port value must be unique for every application server.
To communicate over a different port, propagate the real plugin-cfg.xml file.
The 80 value is the default value for the port that controls communication with the Web server. However, each application server profile must have a unique port value to communicate to a Web server. The actual port value might be 81 or another number.
To communicate over a different port, propagate the real plugin-cfg.xml file.
The 9443 value is the default value for the HTTPS (secure) transport port for the default_host virtual host. This value is probably the same as the value in the updated file. However, this value changes for every profile on the application server machine. The HTTPS transport port value must be unique for every application server.
To communicate over a different secure port, propagate the real plugin-cfg.xml file.
The default file lists all of the default applications and samples. The list can be inaccurate. If you performed a custom installation and did not install the samples, for example, the list is inaccurate.
To serve an application that you developed with the Web server, propagate the real plugin-cfg.xml file.
Related tasks
Editing Web server configuration files
Mapping modules to servers
Related reference