My Oracle Support Banner

Oracle HTTP Server's WebLogic Plug-In MatchExpression is Merging Incorrectly (Doc ID 2484512.1)

Last updated on MARCH 23, 2020

Applies to:

Oracle HTTP Server - Version 11.1.1.9.0 and later
Information in this document applies to any platform.

Symptoms

SSL Virtual Host is picking up mod_wl_ohs configuration from a non-ssl virtual host for a different port.
The expectation is that plugin configuration is local to the virtual host in which it is defined not global or applicable to other virtual hosts.

The issue can be reproduced at will with the following steps:

1. Configure mod_wl_ohs in virtual hosts as follows.
--Non SSL Virtual Host--

<VirtualHost *:<PORT1>>
   <IfModule weblogic_module>
      Debug All
       WLLogFile /<PATH>/mod_wl_nonssl.log
       MatchExpression *
       WebLogicCluster <HOSTNAME>:<PORT1>
       WLProxySSl ON
   </IfModule>
</VirtualHost>


--SSL Virtual Host--

<VirtualHost *:<PORT2>>
   ...ssl things...
   <IfModule weblogic_module>
      Debug All
      WLLogFile /<PATH>/mod_wl_ssl.log
      <Location />
         SetHandler weblogic-handler
         SecureProxy On
         WebLogicCluster <HOSTNAME>:<PORT2>
      </Location>
      WLSSLWallet "<wallet>"
   </IfModule>
</VirtualHost>

2. Test the access to the ssl virtual host eg https://<HOSTNAME>:<PORT2>/<URI>

3. Check the debug logs and find the request is routed to non ssl virtual host config.

================NewRequest: [GET /<URI> HTTP/1.1] =================
INFO: SSL is configured
Using Uri /<URI>
After trimming path: '/<URI>'
The final request string is '/<URI>'
parseServerList: Socket Address hostnames '<HOSTNAME>:<PORT1>'
Host extracted from serverlist is [<HOSTNAME>]
parseServerList: trying IP addr <HOSTNAME>
parseServerList: Host:Port1 apr_socket_connect error [70007] The timeout specified has expired
parseServerList: IP from socket Address [<HOSTNAME>]
Initializing lastIndex=0 for a list of length=1
getListNode: created a new server node: id='<HOSTNAME>:<PORT1>' server_name='<HOSTNAME>', port='<PORT1>'
attempt #0 out of a max of 2
keepAlive = 1, canRecycle = 1
Trying a pooled connection for '<HOSTNAME>/<PORT1>/<PORT1>'
getPooledConn: found a host and port/<PORT1> match
getPooledConn: No more connections in the pool for Host[<HOSTNAME>] Port[Port1] SecurePort[Port1]
general list: trying connect to '<HOSTNAME>'/<PORT1>/<PORT1>at line 2462 for '/<URI>'






Changes

 

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Symptoms
Changes
Cause
Solution
References


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.