WebSphere Application Server Network Deployment, Version 6.1
             Operating Systems: z/OS

             Personalize the table of contents and search results
This topic applies only on the z/OS operating system.

Installing and configuring the plug-in for V5.3 HTTP Server for z/OS

The HTTP Server plug-in for z/OS ships as part of WebSphere Application Server for z/OS platform. To use this plug-in, you must have a Version 5.3 HTTP Server for z/OS configured as part of a z/OS system.

About this task

Version 5.3 HTTP Server for z/OS is provided with the z/OS base operating system. HTTP Server for z/OS is not an Apache-based server. HTTP Server for z/OS does not support 64-bit architecture and does not support IPv6.

This procedure outlines how to install and configure the plug-in for HTTP Server for z/OS.

Procedure

  1. Make sure a Version 5.3 HTTP Server for z/OS is installed on a z/OS system.
  2. If the HTTP Server is not installed on the same LPAR as the application server, perform the following steps to download, in binary format, the HTTP Server plug-in for z/OS and the plugin-cfg.xml file from the LPAR on which the application server is running to the LPAR where the HTTP Server is installed. The directory into which the plug-in is downloaded must be readable to the MVS ID under which the HTTP Server is executing.
    1. Use FTP or another file transfer mechanism to download, in binary format, the HTTP Server plug-in for z/OS from your WebSphere Application Server for z/OS system to the HTTP Server's system and into a directory that is readable to the MVS ID under which the HTTP Server is executing. The ihs390WAS61Plugin_http.so DLL is located in the WebSphere Application Server app_server_root/bin/ directory
    2. Set the permissions (755 +p) on the plug-in's ihs390WAS61Plugin_http.so file. Using an authorized z/OS user ID, issue the following commands from an OMVS command line prompt to turn on the "p" bit in the HFS where the HTTP Server plug-in for z/OS is now located:
      chmod 755 ihs390WAS61Plugin_http.so 
      extattr +p ihs390WAS61Plugin_http.so
      To check the result of the extattr command, issue the following command:
      ls -E  ihs390WAS61Plugin_http.so
      Then look for "ps" in the extended attributes. For example:
      -rwxr-xr-x  -ps-  1 USER123  WASUSER  1482752 Aug  2 14:17 ihs390WAS61Plugin_http.so
  3. Run setup.sh to create two files, httpd.conf and httpd.enwars, for customizing and configuring the Web server. Create the httpd.conf and httpd.enwars files in the /etc directory. The setup.sh file is located in the usr/lpp/internet/sbin directory.
  4. Add ServerInit, ServerTerm, and Service directives to the httpd.conf configuration file of the HTTP Server:
    • Add the following ServerInit and ServerTerm directives to indicate the entry points to the plug-in's initialization and exit routines. These routines exist as entry points init_exit, and term_exit, respectively, within the ihs390WAS61Plugin_http.so DLL file.
      Important:
      • In this discussion, the ServerInit and Service directives are split for printing purposes. In the actual httpd.conf file, enter each of these directives on a single line.
      • In the ServerInit directive, http_plugin_conf represents the full path to the location of the plugin-cfg.xml file.
      • In the ServerInit, Service and ServerTerm directives, http_plugin_dir represents either:
        1. The full path of the Application Server's app_server_root/bin/ path, if the HTTP Server is on the same LPAR as the WebSphere Application Server, or
        2. The full path that you designated as the destination of the FTP operation in the previous step, if the HTTP Server is not on the same LPAR as the WebSphere Application Server.
      ServerInit /http_plugin_dir/bin/
          ihs390WAS61Plugin_http.so:init_exit /http_plugin_conf/
          plugin-cfg.xml
      ServerTerm /http_plugin_dir/bin/ihs390WAS61Plugin_http.so:term_exit
    • Add the following Service directive for each application that will be using the Web server plug-in. This directive indicates the entry point to the plug-in's request routine. The request routine exists as the entry point service_exit within the ihs390WAS61Plugin_http.so Dynamic Link Library (DLL) file.
      Service /webapp_contextroot/*  /http_plugin_dir/
           ihs390WAS61Plugin_http.so:service_exit

      webapp_contextroot is the application's context root

    Notes:
    1. The HTTP Server interprets a blank in a directive specification as a delimiter and a number sign (#) as the beginning of a comment that should be ignored. Therefore, if you need to use a blank or number sign in a directive, you must include a backslash (\) before the blank or number sign to enable the HTTP Server to correctly process the directive.
    2. If a servlet sets an HTTP response code by any means, such as using methods lastModified() or setStatus(), and the client does not receive the expected response code, add the following directive to the HTTP Server configuration file:
      ServiceSync On
    3. If you want to use Secure-socket layer (SSL), make sure that the HTTP Server is configured for SSL. The SSL connection between the Web server plug-in and the J2EE server uses the SSL session established by the HTTP Server. (See z/OS HTTP Server Planning, Installing, and Using, Version 5.3, SC34-4826, for a description of how to configure the HTTP Server for SSL.)
  5. If the httpd.conf file contains a Pass directive that is set to /*, make sure that the Service directives precede the Pass directive.
  6. Create a Web server definition for the local or remote z/OS Web server using the appropriate Customization Dialog panel.
  7. Configure the plug-in. Use either the administrative console or issue the genplugincfg command to create your plugin-cfg.xml file.
    Note: Both methods create the plug-in configuration file, plugin-cfg.xml, in ASCII format. (Previously, the configuration file was generated in EBCDIC format.)
    1. If you need to edit this file, issue the following command to convert the file to EBCDIC format:
      > iconv  -f ISO8859-1 -t IBM-1047 plugin-cfg.xml.ASCII > plugin-cfg.xml.EBCDIC
    2. Edit the file, and then issue the following command to convert it back to ASCII format:
      > iconv  -f IBM-1047 -t ISO8859-1  plugin-cfg.xml.EBCDIC > plugin-cfg.xml.ASCII

    To use the administrative console:

    1. Select Servers > Web Servers > webserver > plug-in properties.
    2. Select Automatically generate plug-in configuration file or click on one or more of the following topics to manually configure the plugin-cfg.xml file:
    3. Click OK.
    4. You might need to stop the application server and then start the application server again to enable the Web server to locate the plugin-cfg.xml file.
  8. Make sure the virtual host is configured with an alias for the port number used by the z/OS V5.3 HTTP Server. If you manually configured the plugin-cfg.xml file, go to the Servers > Application Servers > plug-in properties > Request routing page in the administrative console and make sure that Physically using the port specified in request is selected for Virtual host matching.
  9. Stop the application server and the HTTP Server, and then start them again.

    The configuration is complete. To activate the configuration, stop and restart both the application server and the HTTP Server.

Results

If the HTTP Server plug-in for z/OS comes up successfully when the HTTP Server starts again, you receive the following messages:
WebSphere HTTP plug-in for z/OS Version 6.00 Service Level 0 is starting
 WebSphere HTTP plug-in for z/OS initializing with configuration file :
         fully_qualified_path_to_the_plugin-cfg.xml_file 
WebSphere HTTP plug-in for z/OS initialization went OK :-)

What to do next

After the application server, the HTTP Server and the plug-in are properly configured:
  • WebSphere Application Server for the z/OS platform can use this plug-in to perform regular plug-in functions.
  • Requests can be routed from a browser, through the HTTP Server and plug-in, to an application server on which the requested application is deployed. (New requests are sent to randomly selected application servers on which this application is deployed. After a session is established, requests get routed back to the application server assigned to the original request.)
  • Private headers can be used as a mechanism for forwarding proxy information from the Web server plug-in to an application server on a z/OS system. (This information is not otherwise included with HTTP requests.)



In this information ...


IBM Redbooks, demos, education, and more


Use IBM Suggests to retrieve related content from ibm.com and beyond, identified for your convenience.

This feature requires Internet access.

IBM Suggests
Task topic    

Terms of Use | Feedback

Last updated: Feb 25, 2009 9:32:38 AM CST
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ibm.websphere.nd.multiplatform.doc/info/ae/ae/trun_plugin_390.html