WebSphere® Application
Server provides web server plug-ins that you can configure to communicate
with a particular brand of web server. Learn how to install the web
server, its web server plug-in for WebSphere Application
Server, and the application server on the same machine.
Before you begin
When multiple profiles exist, you
can select the profile that the Web Server Plug-ins Configuration
Tool configures. See Plug-ins configuration for
a description of the flow of logic that determines how to select the
profile to configure.
When
multiple profiles exist, you can select the profile that the Web Server
Plug-ins Configuration Tool configures. See Plug-ins configuration for a description
of the flow of logic that determines how to select the profile to
configure.
If the WebSphere Application Server product family
supports a particular brand of web server, such as IBM® HTTP Server or Microsoft Internet Information Services
(IIS), your WebSphere Application
Server product provides a binary plug-in for the web server that you
must install.
If the WebSphere Application Server product family
does not provide a binary plug-in for a particular brand of web server,
then the web server is not supported. The purpose of the binary plug-in
is to provide the communication protocol between the web server and
the application server.
Suppose
that you create a new profile and you also want to use a web server.
You must install a new web server for the new profile, install the
Web Server Plug-ins, and use the Web Server Plug-ins Configuration
Tool to configure both the web server and the application server.
If the web server is not already installed, you can still
install the Web Server Plug-ins for future use.
This procedure
configures the application server profile that is the default profile
on the machine. A one-to-one relationship exists between a web server
and the application server.
However,
a standalone application server profile and a managed profile can
each have multiple web servers defined, each in a separate web server
definition.
This article describes how to create the following topology:
Note: Nonroot
installation for the plug-in component is only supported if the application
server was also installed by the same nonroot user. Otherwise, the
web server configuration scripts will fail to run against the application
server installation.
About this task
Note: This topic references one or more of the application
server log files. As a recommended alternative, you can configure
the server to use the High Performance Extensible Logging (HPEL) log
and trace infrastructure instead of using SystemOut.log , SystemErr.log, trace.log, and activity.log files on distributed and IBM i systems. You can also use
HPEL in conjunction with your native z/OS® logging facilities. If you are using HPEL, you can access
all of your log and trace information using the LogViewer command-line
tool from your server profile bin directory. See the information
about using HPEL to troubleshoot applications for more information
on using HPEL.
The Web Server Plug-ins Configuration Tool edits the configuration
file or files for a web server by creating directives that point to
the location of the binary plug-in module and the plug-in configuration
file.
The name of the binary plug-in module varies per web
server type. The plug-in configuration file is always the plugin-cfg.xml file.
The
Web Server Plug-ins Configuration Tool creates a web server definition
in the configuration of the application server unless one already
exists.
You can use the administrative console to manage the web
server configuration. For example, when you install an application
on the application server, you can also choose to install it on the
web server definition. If so, the updated plugin-cfg.xml file
shows that the new application is available. When the web server reads
the updated plug-in configuration file, the web server becomes aware
of the new application that it can serve to web clients.
If
you choose not to install the new application on the web server definition,
the application is not added to the plug-in configuration file. The
web server is not aware of the application and cannot serve it to
web clients.
Use
this procedure to install the web server plug-in, configure the web
server, and create a web server definition in the default application
server profile.
Procedure
- Configure a standalone application server.
- Log on to the operating system.
If you
are installing as a nonroot or non-administrative user, then there
are certain limitations.
![[Windows]](../images/windows.gif)
When installing as an administrative
user on a Windows operating
system, a Windows service
is automatically created to autostart the application server. The
installer user account must have the following advanced user rights:
- Act as part of the operating system
- Log on as a service
For example, on some Windows operating
systems, click
Control Panel > Administrative Tools > Local
Security Policy > Local Policies > User Rights Assignments to
set the advanced options. See your Windows operating
system documentation for more information.
If you plan to run the application server as a Windows service, do not install
from a user ID that contains spaces. A user ID with spaces cannot
be validated. Such a user ID is not allowed to continue the installation.
To work around this restriction, install with a user ID that does
not contain spaces.
- Install Installation Manager.
- Use Installation Manager to install the following:
- WebSphere Application
Server Network Deployment
- Web Server Plug-ins for WebSphere Application
Server
- Websphere Customization Toolbox
- Use Installation Manager to install the IBM HTTP Server, or install another supported
web server.
- Open the Websphere Customization Toolbox, and launch
the Web Server Plug-ins Configuration Tool.
- Select a Web Server Plug-ins runtime location.
If
the location of a previously installed web server plug-in that you
want to use is not in the list, perform the following actions to add
the location to your working set:
- Click Add.
- Enter a name for the web server plug-in location.
- Perform one of the following actions:
- Enter the location.
- Click Browse, find the location, and click OK.
- Click Create.
- Select the type of web server that you are configuring,
and click Next.
- Select the architecture of your installed target web
server (64 bit or 32 bit) and click Next if
you are asked.
- Click Browse to select the configuration
file or files for your web server, verify that the web server port
is correct, and then click Next when you are
finished.
Select the file and not just the directory
of the file. Some web servers have two configuration files and require
you to browse for each file.
The following list shows configuration
files for supported web servers:
- Apache HTTP Server
- apache_root/config/httpd.conf
- Domino® Web Server
- names.nsf and Notes.jar
The
wizard prompts for the notes.jar file. The actual
name is Notes.jar.
The Web
Server Plug-ins Configuration Tool verifies that the files exist but
the tool does not validate either file.
- IBM HTTP Server
IHS_root/conf/httpd.conf
IHS_profile_root/conf/httpd.conf
- Microsoft Internet
Information Services (IIS)
- The Web Server Plug-ins Configuration Tool can determine the correct
files to edit.
- Sun Java System Web Server
(formerly Sun ONE Web Server and iPlanet Web Server) Version 6.0 and
later
- obj.conf and magnus.conf
- If you are configuring an IBM HTTP
web server plug-in, perform the following actions.
- Optionally, set up the administration server configuration to
administer the web server.
Attention: When using the Web
Server Plug-ins Configuration Tool to configure the IBM HTTP Server Administration Server, the Websphere
Customization Toolbox must be run as a "local" account with administrator/root privileges.
- Select Setup IBM HTTP
Server Administration Server.
- Specify a port number on which the IBM HTTP
administration server will communicate.
- Optionally, select Create a user ID for IBM Server Administration Server authentication and
enter a user ID and password to authenticate to the IBM HTTP Server administrative server from the
administrative console.
- Click Next.
![[AIX]](../images/aixlogo.gif)
![[HP-UX]](../images/hpux.gif)
![[Linux]](../images/linux.gif)
Specify the system user ID
and group to have write permission to IBM HTTP
Server, the IBM HTTP Server
administrative server, and the web server plug-in configuration files.Select Create
a new unique system user ID and group using the credentials if
necessary.
![[AIX]](../images/aixlogo.gif)
Restriction: The
configuration might fail if you specify a new user ID or group name
that exceeds the platform limit, which is commonly 8 characters and
is sometimes configurable.
Optionally, set up the IBM HTTP Server Administration Server to run
as a Window service.- Select Run IBM HTTP Server
Administration Server as a Windows Service.
- Perform one of the following actions:
- Select Log on as a local system account.
- Select Log on as a specified user account, and enter the
user ID and password for that account.
The user ID requires the
following advanced user rights:
- Act as part of the operating system
- Log on as a service
- Choose whether your startup type will be automatic or manual.
- Click Next.
- Specify a unique name for the web server definition,
and click Next.
- Select the configuration scenario.
- Choose the local scenario.
- Perform one of the following actions:
- Enter the installation location of WebSphere Application Server (app_server_root).
- Click Browse, find the installation location of WebSphere Application Server
(app_server_root), and click OK.
- Click Next.
- Select the profile to configure with the current web
server plug-in, and click Next.
- Review the summary information, and click Configure to
begin configuring the web server, web server plug-in, and application
server profile.
- Verify the success of the installation on the summary
panel, and click Finish.
If a
problem occurs and the installation is unsuccessful, examine the logs
in the plugins_root/logs directory.
Correct any problems and re-configure.
- Domino Web
Server only: Set the WAS_PLUGIN_CONFIG_FILE environment variable.
On platforms such as AIX® or Linux, sourcing a script to the
parent shell allows child processes to inherit the exported variables.
On Windows systems, run
the script as you would run any other command. Sourcing is automatic
on Windows systems.
- Open a command window.
- Change directories to the plug-ins installation root directory.
- Issue the appropriate command for the plugins_root/bin/setupPluginCfg.sh script:
![[AIX]](../images/aixlogo.gif)
![[HP-UX]](../images/hpux.gif)
. plugins_root/bin/setupPluginCfg.sh (Notice
the space between the period and the installation root directory.)
source plugins_root/bin/setupPluginCfg.sh
The script is also in the lotus_root/notesdata directory
on operating systems such as AIX or Linux.
Issue the appropriate
command for the script before starting the Domino Web Server.
- Start the Snoop servlet to verify the ability
of the web server to retrieve an application from the application
server.
Test your environment by starting your application
server, your web server, and using the Snoop servlet with an IP address.
- Start the application server. In a Network
Deployment environment, the Snoop servlet is available in the cell
only if you included the DefaultApplication when adding the application
server to the cell. The -includeapps option for the addNode command
migrates the DefaultApplication to the cell. If the application is
not present, skip this step.
- Start the IBM HTTP Server
or the web server that you are using.
Use either
the 2001 page or use the STRTCPSVR SERVER(*HTTP) HTTPSVR(instance_name )
command to start the IBM HTTP
Server.
Use a command window to change the directory
to the IBM HTTP Server installed
image, or to the installed image of your web server. Issue the appropriate
command to start the web server, such as these commands for IBM HTTP Server:
To
start the IBM HTTP Server from
the command line:
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
Access the
apache and
apachectl commands
in the
IBMHttpServer/bin directory.
- Point your browser to http://localhost:9080/snoop to
test the internal HTTP transport provided by the application server.
Point your browser to http://Host_name_of_Web_server_machine/snoop to
test the web server plug-in.
The HTTP Transport port is 9080 by
default and must be unique for every profile. The port is associated
with a virtual host named default_host, which is configured to host
the installed DefaultApplication. The Snoop servlet is part of the
DefaultApplication. Change the port to match your actual HTTP Transport
port.
- Verify that Snoop is running.
Either web address should display
the Snoop Servlet - Request/Client Information page.
Tip: In
the event of a verification failure where an HTTP error code of 500
appears, go to IIS Manager > Default Web Site > sePlugins.
Right click, and choose to edit permissions. Click on the sharing
tab, and choose to share with everyone (permissions level: read/write).
- Remote IBM HTTP Server
only:
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
Verify that the automatic propagation
function can work on a remote IBM HTTP
Server by using the following steps. This procedure is not necessary
for local web servers.
- Create a user=adminUser, password=adminPassword in the IHS_root /conf/admin.passwd file.
For example: c:\ws\ihs80\bin\htpasswd -cb c:\ws\ihs80\conf\admin.passwd
adminUser adminPassword
- Use the administrative console of the deployment
manager or the application server to enter the User ID and password
information that you created for the administrative user of IBM HTTP Server. Go to Servers
> Web server > web_server_definition > Remote web
server administration. Set the following values: admin
Port=8008, User Id=adminUser, Password=adminPassword.
- Set the correct read/write permissions for the httpd.conf file
and the plugin-cfg.xml file. See the IHS_root /logs/admin_ERROR.
LOG file for more information.
Automatic propagation of the plug-in configuration file
requires the IBM HTTP administrative
server to be up and running. If you are managing an IBM HTTP Server using the WebSphere Application Server administrative
console, the following error might display:
"Could not connect to IHS Administration server error"
Perform
the following procedure to correct the error:
- Verify that the IBM HTTP
Server administration server is running.
- Verify that the web server host name and the port that is defined
in the WebSphere Application
Server administrative console matches the IBM HTTP Server administration host name and
port.
- Verify that the fire wall is not preventing you from accessing
the IBM HTTP Server administration
server from the WebSphere Application
Server administrative console.
- Verify that the user ID and password that is specified in the WebSphere Application Server
administrative console under remote managed, is created in the admin.passwd file,
using the htpasswd command.
- If you are trying to connect securely, verify that you export
the IBM HTTP Server administration
server keydb personal certificate into the WebSphere Application Server key database
as a signer certificate. This key database is specified by the com.ibm.ssl.trustStore
directive in the sas.client.props file in the
profile where your administrative console is running. This consideration
is primarily for self-signed certificates.
- If you still have problems, check the IBM HTTP Server admin_ERROR. LOG
file and the WebSphere Application
Server logs (trace.log file) to determine the
cause of the problem.
- Configure an application
server that is federated into a deployment manager cell.
Note: The
following procedure describes installing the plug-ins on two machines.
However, you could perform this procedure on a single machine.
The
following topology is considered a local distributed topology because
it involves a cell:

This part of the procedure
assumes that you have already installed Installation Manager and the
Network Deployment product on both machines. Also assumed is that
you have already configured a deployment manager profile on Machine
A and an application server profile on Machine B.
If you are
planning to add the application server node into a deployment manager
cell but have not done so yet, start the deployment manager and federate
the node before configuring the plug-in. You cannot add an application
server with a web server definition into the deployment manager cell.
A
web server definition on a federated application server is installed
on the same managed node as the application server. There is one node,
but with two server processes, the application server and the web
server definition.
If you are installing the plug-ins for use
with a federated application server, start the deployment manager.
Verify that the node agent process on the managed node is also running.
Both the deployment manager and the node agent must be running to
successfully configure a managed node.
- Use Installation Manager to install the following on
Machine B.
- Web Server Plug-ins for WebSphere Application
Server
- Websphere Customization Toolbox
- Use Installation Manager to install IBM HTTP Server on Machine B, or install another
supported web server on Machine B.
- Open the WebSphere Customization
Toolbox and launch the Web Server Plug-ins Configuration Tool on Machine
B.
- Select a web server plug-in runtime location.
If
the location of a previously installed web server plug-in that you
want to use is not in the list, perform the following actions to add
the location to your working set:
- Click Add.
- Enter a name for the web server plug-in location.
- Perform one of the following actions:
- Enter the location.
- Click Browse, find the location, and click OK.
- Click Create.
- Select the type of web server that you are configuring,
and click Next.
- Select the architecture of your installed target web
server (64 bit or 32 bit), and click Next.
- Click Browse to select the configuration
file or files for your web server, verify that the web server port
is correct, and then click Next when you are
finished.
Select the file and not just the directory
of the file. Some web servers have two configuration files and require
you to browse for each file.
The following list shows configuration
files for supported web servers:
- Apache HTTP Server
- apache_root/config/httpd.conf
- Domino Web Server
- names.nsf and Notes.jar
The
wizard prompts for the notes.jar file. The actual
name is Notes.jar.
The web Server Plug-ins
Configuration Tool verifies that the files exist but the tool does
not validate either file.
- IBM HTTP Server
IHS_root/conf/httpd.conf
IHS_profile_root/conf/httpd.conf
- Microsoft Internet
Information Services (IIS)
- The Web Server Plug-ins Configuration Tool can determine the correct
files to edit.
Note: The best practice is to use 32-bit plug-ins on
IIS 7.
- Sun Java System Web Server
(formerly Sun ONE Web Server and iPlanet Web Server) Version 6.0 and
later
- obj.conf and magnus.conf
- Specify a unique name for the web server definition,
and click Next.
- Select the configuration scenario.
- Choose the local scenario.
- Perform one of the following actions:
- Enter the installation location of WebSphere Application Server (app_server_root).
- Click Browse, find the installation location of WebSphere Application Server
(app_server_root), and click OK.
- Click Next.
- Select the profile to configure with the current web
server plug-in, and click Next.
- Review the summary information, and click Configure to
begin configuring the web server, web server plug-in, and application
server profile.
- Verify the success of the installation on the summary
panel, and click Finish.
If a
problem occurs and the installation is unsuccessful, examine the logs
in the plugins_root/logs directory.
Correct any problems and re-configure.
- Copy the configureweb_server_name script
to paste on Machine A.
- Create the web server definition on Machine A.
You
can use the administrative console of the deployment manager to create
the web server definition on a federated node; or you can run the
configuration script that the Web Server Plug-ins Configuration Tool
created.
The script already contains all of the information
that you must gather when using the administrative console option.
Select
one of the following options:
- From the administrative console of the deployment manager,
click System administration > Save Changes to Master Repository
> Synchronize changes with Nodes > Save.
- Domino web
server only: Set the WAS_PLUGIN_CONFIG_FILE environment variable.
On platforms such as AIX or Linux, sourcing a script to the
parent shell allows child processes to inherit the exported variables.
On Windows systems, run
the script as you would run any other command. Sourcing is automatic
on Windows systems.
- Start the Snoop servlet.
See the Snoop procedure
for the standalone application server for the full procedure.
Results
The installation of the Web Server Plug-ins
results in the creation of the
Plugins directory
and several subdirectories. The following directories are among those
created on a Linux system,
for example:
- plugins_root/bin contains
the binary plug-ins for all supported web servers
- plugins_root/logs contains
log files
- plugins_root/properties contains
version information
The
Web Server Plug-ins Configuration Tool creates a web server definition
within the application server profile unless one already exists.
The
Web Server Plug-ins Configuration Tool configures the web server to
use the profile_root/plugin-cfg.xml file.
The
application server regenerates the web server plug-in configuration
file,
plugin-cfg.xml whenever an event occurs
that affects the file. Such events include the addition or removal
of an application, server, or virtual host. The standalone application
server regenerates the file in the following location:
profile_root
/config/cells/cell_name/nodes/
web_server_name_node/servers/
web_server_name/plugin-cfg.xml
On a federated node, the creation or removal of clusters
and cluster members also causes file regeneration. The deployment
manager regenerates the file for a federated application server in
the following location:
profile_root
/config/cells/cell_name/nodes/
node_name_of_AppServer/servers/
web_server_name/plugin-cfg.xml
What to do next
You can start a standalone application server and the
web server immediately after configuring the plug-in for the local
web server. Open the administrative console of the application server
after you start the server and save the changed configuration.
After configuring the plug-in for the local web server,
you can start a federated application server and the web server after
running the script that completes the configuration. Open the administrative
console of the deployment manager. Wait for node synchronization to
occur. Save the changed configuration that includes the new web server
definition.
See Selecting a web server topology diagram and roadmap for
an overview of the installation procedure.
See ![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
Plug-ins configuration for
information about the location of the plug-in configuration file.
See Web server configuration for information
about the files involved in configuring a web server.
See Editing web server configuration files for information
about how the Web Server Plug-ins Configuration Tool configures supported
web servers.
See Installing and configuring web server plug-ins for
information about other installation scenarios for installing web
server plug-ins.