Hi everyone,
We have an application still running on ORDS 21.4 with OHS and Weblogic 12.2.1.4 that we're trying to migrate to ORDS 26 with OHS and Weblogic 14.1.2.
In our setup, OHS is a reverse proxy to Weblogic/ORDS. We have specific Location blocks setup in mod_wl_ohs.conf so that when someone goes to https://ohs-host/app it gets redirected to http://weblogic-host:7001/ords/app. We accomplish this through PathTrim and PathPrepend directives, trimming /app and prepending /ords/app before handing it to Weblogic. This setup has worked for us with ORDS 21.4.
However, it appears somewhere around ORDS 23.2, they changed how they serve up misc.defaultPage in ORDS. Previously, if we went to /ords/app/, if misc.defaultPage was set to “myDefaultPage”, the URL would stay /ords/app/, and ORDS would return the content from “myDefaultPage” to the browser. Now, however, ORDS instead sends a 302 redirect, so /ords/app/ redirects to /ords/app/myDefaultPage, and the browser loads /ords/app/myDefaultPage from ORDS directly.
Here's where we hit our problem - that 302 URL /ords/app/myDefaultPage doesn't go through processing by mod_wl_ohs, so the PathTrim and PathPrepend get missed. My OHS server tries to load https://ohs-host/ords/app/myDefaultPage instead of https://ohs-host/app/myDefaultPage.
I'm sure there's some mod_rewrite/mod_headers trickery I can do to workaround this issue, but I first wanted to see if there's a “proper” way to handle this problem. Otherwise I can try to use mod_rewrite to remove /ords/ from the URL when the user's browser requests it after the redirect, or I can try to use mod_headers to remove /ords/ from the 302 Location response header - which is preferable in order to keep the backend /ords/ URL from being made public.
Has anyone else had this problem? Is there a simple solution that I'm overlooking? Thanks!