1

I am not a websphere guru, and what I have found docmentation wise for websphere assumes you already have in-depth understanding of its architecture and internals. I hope/suspect this is a RTFM question, and someone can enlighten me to where I understand the manual.

I have configured websphere so it properly presents JSP content to both internal and external facing IP's, but it will not present static content to the external facing IP.

When invoked from internal facing IP (http://192.168.1.1/staticContent/123456.pdf), I get the expected results.

When invoked from the external facing IP (http://xxx.xxx.xxx.xxx/staticContent/123456.pdf), I get this:

SRVE0255E: A WebGroup/Virtual Host to handle /staticContent/123456.pdf has not been defined.


SRVE0255E: A WebGroup/Virtual Host to handle xxx.xxx.xxx.xxx:9099 has not been defined.

Nothing is logged in the IHS access or error logs on failed attempt. On a successful (internal facing) attempt 200 or 302 is logged in the access log.

From the port number, I can tell that IHS is directing traffic that I intend to be handled by IHS to the JSP, but only when it's coming over the external facing IP address.

There are five virtual hosts:

admin_host default_host app_prod_host app_test_host proxy_host

The port 9099 is the port that the prod JSP is listening on. Websphere should be directing this address to static content, not the jsp.

The contents of the httpd.conf is:

<snip ...>
UseCanonicalName Off
DocumentRoot "//staticContentServer/staticContent"
#
# This should be changed to whatever you set DocumentRoot to.
#
<Directory "//staticContentServer/staticContent">
    Options FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>
</... snip>

Under virtual Hosts => app_prod_host => Host Aliases, the configurations is:

*     9444  
*     9045  
*     9099  
*     9062  
*     80  
192.168.1.1     80  
mydnsname     80  
mydnsname.mydomain.com     80  

A link I have found helpful is this: https://publib.boulder.ibm.com/httpserv/manual70/vhosts/examples.html Unfortunately, the application I am deploying is a third party application with largely predefined configurations. I believe that configuring through the Virtual Hosts > app_prod_host > Host Aliases UI would accomplish the same thing as configuring via XML (confirmation or rebuttal appreciated).

What am I missing or do I have surplus?

pojo-guy
  • 966
  • 1
  • 12
  • 39
  • Can you clarify if you expect the static content to be served by the Apache-based server or directly or forwarded to WAS? That seems to be the core conceptual problem here. – covener Jul 09 '16 at 18:30
  • Based on the recommended configuration, the static content is expected to be served by the IHS (apache) component. – pojo-guy Jul 10 '16 at 18:44
  • 1
    When you invoke from external ip or dns , IHS gets request and sends to IHS Plugin. And than plugin redirects to application server according to plugin-cfg.xml. In application server side, you don't have a context root named **staticContent**. So you have "not defined" errors. [This technote](http://www-01.ibm.com/support/docview.wss?uid=swg21508890) may help. – sozkul Jul 11 '16 at 08:48
  • So why does it work on the internal address? – pojo-guy Jul 11 '16 at 12:17
  • 1
    "Websphere should be directing this address to static content, not the jsp." This is completely backwards. Your client always hits IHS. IHS either serves it locally or proxies to the AppServer via the WAS Plugin. You say the failures aren't even logged by IHS. Are you even accessing IHS w/ the external IP? – covener Jul 13 '16 at 01:43
  • Good question. It's testable and won't risk breaking anything. – pojo-guy Jul 14 '16 at 01:59
  • @covener It looks like all traffic on inbound on the external IP is being redirected to 9099, possibly before it is hitting the server. I may not be fighting a Websphere issue at all. Time to talk to the router team at the data center. – pojo-guy Jul 14 '16 at 22:24
  • @covener The signal via the external IP is definitely hitting IHS on port 80. It is being redirected via the plugin to port 9099, even though I am expecting IHS to serve up the static content. When addressed via the internal IP and DNS, this does not happen. If I understand correctly, IHS traverses an ordered list of rules, and forwards the http request internally to the first matching rule. If no rules match, then it attempts to serve up static content. Finally, if the static content is missing, it presents an error. This means that my plugin rule is somehow capturing the wrong signals. – pojo-guy Jul 16 '16 at 22:09
  • Can you put your plugin-cfg.xml in a pastebin? It's just URL prefixes and hostnames that determine if the Plugin handles a request. – covener Jul 17 '16 at 01:26
  • @covener The issue turned out to be a router configuration. Once IHS was configured correctly, my data center was able to spot the issue in the router configuration and fix it. – pojo-guy Jul 20 '16 at 19:42
  • Can you post an answer and mark it as answer? – Sun Jul 26 '16 at 19:11

1 Answers1

0

The issue turned out to be a router configuration. Once IHS was configured correctly, my data center was able to spot the issue in the router configuration and fix it.

pojo-guy
  • 966
  • 1
  • 12
  • 39