Config Guide Ibm HTTP Server Reverse Proxy Server Sas9 2 Web Apps Websphere App Server
Config Guide Ibm HTTP Server Reverse Proxy Server Sas9 2 Web Apps Websphere App 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.
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
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.
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.
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.
5
8. Click OK to close the Information Service Configuration dialog box.
9. Click OK to close the Information Service Properties dialog box.
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:
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