0% found this document useful (0 votes)
30 views

Config Guide Ibm HTTP Server Reverse Proxy Server Sas9 2 Web Apps Websphere App Server

The document describes how to configure IBM HTTP Server as a reverse proxy for SAS web applications deployed on IBM WebSphere Application Server. Key steps include installing IBM HTTP Server and the WebServer plugin, configuring the plugin in WebSphere, configuring IBM HTTP Server to serve static SAS theme content, and updating SAS metadata to point to the proxy server.

Uploaded by

Vigneshg Vikki
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
30 views

Config Guide Ibm HTTP Server Reverse Proxy Server Sas9 2 Web Apps Websphere App Server

The document describes how to configure IBM HTTP Server as a reverse proxy for SAS web applications deployed on IBM WebSphere Application Server. Key steps include installing IBM HTTP Server and the WebServer plugin, configuring the plugin in WebSphere, configuring IBM HTTP Server to serve static SAS theme content, and updating SAS metadata to point to the proxy server.

Uploaded by

Vigneshg Vikki
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

Configuration Guide

Configuring IBM HTTP Server as a Reverse


Proxy Server for SAS 9.2 Web Applications
Deployed on IBM WebSphere
Application Server

This document is revised for the third maintenance release for SAS 9.2. In previous versions of this
document, SAS Web applications that had an administrative purpose and SAS Web applications that
provided services, rather than an end-user interface, were not proxied through IBM HTTP Server. In
this version of this document, all the SAS Web applications are proxied through IBM HTTP Server.
This document describes how to configure IBM HTTP Server as a reverse proxy server to an IBM
WebSphere Application Server Network Deployment that is hosting the SAS 9.2 Enterprise Business
Intelligence Web applications. IBM HTTP Server is also configured to serve the static content from
the SAS Themes Web application. This document assumes a starting configuration of a single
WebSphere Application Server that was configured by the SAS Deployment Wizard with an
application server instance that is named SASServer1.
This document describes configuring a topology that is shown in the following figure. The figure
shows the protocol and port number for the connections amongst the software applications.

Overview
The following list identifies the high-level tasks that you must perform to configure IBM HTTP
Server as a reverse proxy server:
 Install IBM HTTP Server and IBM WebServer Plug-In for WebSphere Application Server.
 Configure the Web server definition in WebSphere Application Server. This step registers the
IBM HTTP Server with WebSphere Application Server. If IBM HTTP Server is deployed on a
different machine than WebSphere Application Server, then the machine is added as a node
to the cell.
 Configure IBM HTTP Server to serve the HTML and static content from the SAS Themes
application.
 Generate and propagate the Web server plug-in configuration file from WebSphere
Application Server to the IBM HTTP Server. This configuration file identifies the SAS Web
applications that IBM HTTP Server will proxy.

1
 Reconfigure SAS metadata for the SAS Web applications with the host name and port of the
IBM HTTP Server.
 Verify the configuration by starting the software products in the correct order and logging on
to a SAS Web application.

Required Software
In addition to SAS 9.2 software that includes the SAS Enterprise Business Intelligence Web
applications, you must have these IBM software products:
 IBM WebSphere Application Server v6.1 (installed with Fix Pack 21 or later)
 IBM HTTP Server v6.1
 IBM WebServer Plugin for WebSphere Application Server (can be installed as part of
installing IBM HTTP Server)
 Fix Packs for IBM HTTP Server v6.1 and the WebServer Plug-in (most be the same fixpack
level that was applied to the WebSphere Application Server)
These software products are available on your IBM WebSphere Application Server installation media
or as downloads from IBM. Make sure that IBM HTTP Server and the WebServer Plug-in are at the
same fix pack level as WebSphere Application Server.

Install IBM HTTP Server and WebServer Plug-in


Follow the installation instructions provided in IBM HTTP Server, Version 6: User’s Guide for
information about installing IBM HTTP Server and the WebSphere Plug-in for WebSphere
Application Server. When the plug-in is installed, the installation wizard provides a default name of
webserver1. This document assumes that you used this default value.
After installing the software, use the update installer to install the latest fix packs.
Configuring the Web server plug-in is described later in this document. But, you can confirm that the
plug-in software is installed properly by viewing the httpd.conf file for IBM HTTP Server and
locating the LoadModule and WebSpherePluginConfig directives. See this UNIX example:
LoadModule was_ap20_module "c:\ibm\httpserver\plugins\bin\
mod_was_ap20_http.so"
WebSpherePluginConfig "c:\ibm\httpserver\plugins\config\webserver1\
plugin-cfg.xml"
If the directives are not in the configuration file, either re-install the Web server plug-ins so that the
installation wizard can run again, or add the lines manually to the httpd.conf file.

Configure the Web Server Definition


The WebServer Plug-in installation wizard creates a script that includes all the information that is
needed to define the IBM HTTP Server within WebSphere Application Server. The script is located in
PLUGINS_ROOT/bin and is named according to the Web server name (configurewebserver1.sh
for UNIX or configurewebserver1.bat for Windows). If you cannot locate the script, then the
installation wizard did not run successfully. Either re-install the Web server plug-ins so that the

2
installation wizard can run again, or manually define the Web server in the WebSphere
administration console.
To run the configuration script that defines the Web server within WebSphere Application Server,
follow these steps:
1. Copy the configurewebserver1.bat script to the bin directory for WebSphere Application
Server:
From location: c:\IBM\HTTPServer\Plugins\bin\configurewebserver1.bat

To location: c:\IBM\WebSphere\AppServer\bin

2. Run the configurewebserver1.bat command.


As the script runs, it performs the following configuration tasks:

 Defines a node, if IBM HTTP Server is installed on a machine that does not have WebSphere
Application Server installed on it, and adds it to the cell.
 Creates a Web server definition for the IBM HTTP Server.
 Generates a plugin-cfg.xml file that includes the SAS Web applications that are deployed on
WebSphere Application Server and stores it in the WebSphere Application Server repository.
3. If IBM HTTP Server is installed a different machine than WebSphere Application Server, log on
to the WebSphere administrative console and set the credentials for the IBM HTTP Server
administrative server:
a. Select Servers > Web servers.
b. Click webserver1.
c. Click Remote Web server management.
d. Provide or confirm the settings for Port (default value is 8008), Username, and Password.
Click OK.

Configure IBM HTTP Server to Serve SASThemes Static


Content
The SAS Themes Web application is actually a collection of static HTML resources such as images
and cascading style sheets. This step removes the SASThemes9.2 Web application from WebSphere
Application Server and configures IBM HTTP Server to serve that content. By serving the SAS
Themes content through the HTTP server, the processing load is shifted from WebSphere Application
Server to the IBM HTTP Server. Follow these steps:
1. In a temporary directory, extract the contents of SAS-config-dir\Levn\Web\Staging
\sas.themes.ear:
jar xf c:\SAS\Config\Lev1\Web\Staging\sas.themes.ear

The WAR file, sas.theme.default.war is extracted. If IBM HTTP Server is running on a different
machine than WebSphere Application Server, then transfer sas.theme.default.war to the machine
that is running IBM HTTP Server.

3
2. Change directory to the htdocs\en_US directory for the IBM HTTP Server and make a new
directory named SASTheme_default.
3. Extract the sas.theme.default.war file into htdocs\en_US\SASTheme_default.
4. Remove the sas.themes.ear application from WebSphere Application Server:
a. In the WebSphere administrative console, select Applications > Enterprise Applications.
b. Select the check box for SASThemes9.2 and then click Uninstall.
c. Click OK on the confirmation page.
The location in step 2, htdocs\en_US\SASTheme_default, is used because SASTheme_default
matches the value of the <context-root> that is defined in the META-INF\application.xml
file for the sas.themes.ear file.

Change the Connections for the SAS Web Applications


After SAS Themes is deployed to the IBM HTTP server and the plug-in configuration file is in place,
information about access to the SAS Web applications, such as host and port number, must be
updated in SAS metadata. Change the connection information for each SAS Web application to a URL
that includes the host name and port number for the IBM HTTP Server.
To change the connection information, follow these steps in SAS Management Console:
1. Select Application Management > Configuration Manager.
2. Right‐click on the SAS Web application you want to reconfigure, and select Properties.
3. Click the Connection tab, set Host Name and Port Number to the host name and port number of
the IBM HTTP Server, and then click OK.

SAS Web Report Studio 4.3 Specific Update


By default, SAS Web Report Studio 4.2 uses a special redirection filter. When used with a proxy
server, this filter must be disabled. To disable the filter, perform the following steps with SAS
Management Console:
1. Select Application Management > Configuration Manager.
2. Right‐click Web Report Studio 4.3, and select Properties.
3. Click Advanced, and then click Add.
4. Enter a Property Name of App.RedirectionFilterDisabled and a Value of true.
5. Restart SAS Web Report Studio 4.3 from the WebSphere administrative console.

4
SAS Content Server Related Changes
Configure IBM HTTP Server to Accept Content for All Requests
IBM HTTP Server must be configured to accept content, such as attachments from the WebDAV
repository provided by SAS Content Server, with HTTP requests. Follow these steps in the
WebSphere administrative console:
1. Select Servers > Web servers > webserver1 > Plug-in properties > Request and Response.
2. Select the Accept content for all requests check box.

Change the Connection for SAS Content Server


Perform these steps to change the connection information for the SAS Content Server application.
This change is similar to the change required for each of the SAS Web applications. SAS metadata
must be changed to identify the host name and port of the IBM HTTP Server. To reconfigure the host
name and port of the SAS Content Server in SAS metadata, perform the following steps in SAS
Management Console:
1. Select Server Manager > SAS Content Server.
2. Right-click the Connection: SAS Content Server icon in the right panel and select Properties.
3. Click the Options tab and set the Host name and Port number fields to the host name and port
number of the IBM HTTP Server.
4. Click OK.

Change the WebDAV Repository URL


There are five applications that use SAS metadata to identify the connection information for the SAS
Content Server. These applications are identified in the following list:
 Remote Services
 SASPackageViewer4.2 Local Services
 SASPortal4.2 Local Services
 SASStoredProcess9.2 Local Services
 SASWebReportStudio4.2 Local Services
To reconfigure the WebDAV URL for the applications, perform the following steps in SAS
Management Console:
1. Select Environment Management > Foundation Services Manager.
2. Select the application and then select Core > Information Service.
3. Right-click Information Service and select Properties.
4. On the Information Service Properties dialog box, select the Service Configuration tab and then
click Configuration.
5. On the Information Service Configuration dialog box, click the Repositories tab.
6. Select WebDAV and then click Edit.
7. Change the Host and Port values to the host name and port of the IBM HTTP Server.

5
8. Click OK to close the Information Service Configuration dialog box.
9. Click OK to close the Information Service Properties dialog box.

Generate and Propagate the Web Server Plug-in Configuration


File
IBM HTTP Server reads a configuration file that is named plugin-cfg.xml. This file identifies the
location of the SAS Web applications that are deployed on WebSphere Application Server. Because
SASThemes9.2 was removed and the Accept content for all requests setting is changed, this file must
be regenerated. This configuration file must also be propagated to the IBM HTTP Server
configuration directory. Follow these steps in the WebSphere administrative console:
1. Select Servers > Web servers.
2. Enable the check box for webserver1 and then click Generate Plug-in.
3. Enable the check box for webserver1 again, and click Propagate Plug-in.
4. Restart IBM HTTP Server so that it reads the updated configuration file.

Verify the Configuration


Start the software applications in the following order:
1. SAS Remote Services
2. IBM HTTP Server (if it wasn’t restarted after propagating the plugin-cfg.xml file)
3. SASServer1
Once SASServer1 is running, log on to a sample Web application to confirm the configuration is valid
by opening a Web browser to http://httpserver.example.com:port/SASBIDashboard (or any SAS Web
application that is deployed on SASServer1). You are challenged for log on credentials. Provide
credentials and then click Log On.

Troubleshooting
Follow these steps to assist with troubleshooting:
1. Open a browser to http://httpserver.example.com:port and confirm that IBM HTTP Server is
running.

6
2. Enable debugging for the WebSphere Plug-In to IBM HTTP Server. Select Servers > Web servers
> webserver1 > Plug-in properties. Select Detail from the Log level menu. Generate and
propagate the plug-in.
Restart IBM HTTP Server, make a request for one of the SAS Web Applications, and then view
the http_plugin.log file.

a. An entry like the following example indicates that the IBM HTTP Server attempted to serve
the content, rather than sending the request to WebSphere Application Server. This means
that the requested URL is not included in the plugin-cfg.xml file:
[Wed Mar 25 15:25:22 2009] 000044b0 eec96b90 - DETAIL: ws_common:
websphereShouldHandleRequest: No route found

If you run IBM HTTP Server on ports other than 80 (HTTP) and 443 (HTTPS), then you need
to add your preferred port on the virtual host (the default virtual host is default_host).
View the WebSphere Application Server logs for a SRVE0250I log. If the IBM HTTP Server
port is not listed in the log, then use WebSphere administrative console to select
Environment > Virtual Hosts > default_host > Host Aliases and then use the New button to
add your preferred port. Regenerate and propagate the Web server plug-in. Restart IBM
HTTP Server.

b. The GET and lib_htresponse entries show the requested resource and the response:

[Wed Mar 25 09:42:51 2009] 00007c2e f6ed9b90 - DETAIL: GET /hello


HTTP/1.1

lib_htresponse: htresponseRead: Reading the response: e6906a04
[Wed Mar 25 09:42:51 2009] 00007c2e f6ed9b90 - DETAIL: HTTP/1.1
404 Not Found
Response 404: A response like the previous example indicates that IBM HTTP Server
accepted the request from the Web browser, found the requested resource in the plugin-
cfg.xml file, and sent the request to WebSphere Application Server. WebSphere Application
Server does not have an application mapped to the requested URL.

Check that the requested URL matches a SAS Web application. You might receive this error if
you changed your topology, redistributed the SAS Web applications to different WebSphere
Application Server profiles, but did not generate and propagate the Web server plug-in.

Response 403: This response indicates that you do not have credentials to access the SAS
Web applications. One possible scenario is that WebSphere Application Server is using the
same user registry as the SAS Web application and the Web browser is caching credentials
that are recognized by WebSphere Application Server, but are not authorized for the SAS
Web applications. Check the WebSphere Application Server logs for a SECJ0129E log.

Response 302: This response typically indicates that the metadata connection information is
incorrect. In the http_plugin.log file, check the Location value that follows the 302 Found
message. The host name or port for the SAS Logon Manager application is usually incorrect
for this error response. See section “Change the Connections for the SAS Web Applications”
for information about setting the connection information in SAS metadata.

7
Recommended Reading
The following URLs are valid as of November 2010.
IBM Corporation, 2008. IBM HTTP Server, Version 7: User’s Guide. IBM Corporation. Available at
ftp://ftp.software.ibm.com/software/webserver/appserv/library/v70/ihs_70.pdf.
IBM Corporation,
2010http://publib.boulder.ibm.com/infocenter/wasinfo/v7r0/index.jsp?topic=/com.ibm.websphere.inst
allation.nd.doc/info/ae/ae/cins_nonroot.html. IBM HTTP Server for WebSphere Application Server,
Version 7.0. IBM Information Center. Available at
http://publib.boulder.ibm.com/infocenter/wasinfo/v7r0/index.jsp

SAS and all other SAS Institute product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and
other countries. Other brand and product names are registered trademarks or trademarks of their respective companies.
 indicates USA registration.
Copyright  2010 SAS Institute Inc., Cary, NC, USA. All rights reserved.
8
November 14, 2010

You might also like