Estamos utilizando Apache 2.4.48 y un módulo que proporciona Oracle (el "Complemento de WebLogic para Apache", supongo que equivalente a ProxyPass/ProxyPassReverse, pero más específico de WebLogic) para representar algunos puntos finales que están en el servidor WebLogic. La configuración se instaló hace un tiempo y estoy tratando de comprender el comportamiento de la directiva.
En Apache ssl.conf, tenemos (por ejemplo):
<VirtualHost _default_:443 _default_:14101> <Location /> WLSRequest On SetHandler weblogic-handler WebLogicCluster XXX01.foo.com:14101,XXX02.foo.com:14101,XXX03.foo.com:14101,XXX04.foo.com:14101 WLCookieName OAMSESSIONID SecureProxy ON WLSSLWallet "/apps/products/apache/2.4.46/instances/apache_oam/conf/certs/wallet" #RequireSSLHostMatch false Debug OFF WLLogFile "/apps/products/apache/2.4.46/instances/apache_oam/logs/oam_location.out" </Location> <Location /service/show> SetHandler default-handler WLSRequest Off AuthType None Require all granted Header always set Access-Control-Allow-Origin %{ACAO}e env=ACAO Header always set Access-Control-Allow-Credentials "true" Header always set Access-Control-Allow-Methods "GET, POST, OPTIONS" Header always set Access-Control-Allow-Headers "Origin, Content-Type, Accept, Authorization" </Location> . . . ### Cert Check ### ScriptAlias /certcheck "/apps/products/apache/instances/apache_oam/cgi-bin/certcheck" <Location /certcheck> SSLVerifyClient optional_no_ca </Location> ### End Cert Check ### </VirtualHost>Siempre pensé (probablemente por error) que, en la configuración de Apache, la directiva más específica tendría prioridad sobre la menos específica, pero, cuando pruebo con lo anterior, el
<Location />parece hacer que CADA solicitud se envíe por proxy a los servidores back-end, aunque "<Ubicación/certcheck>" es "más específico".
Debido a esto, /certcheck, que se supone que es un recurso local, hace que la solicitud se envíe por proxy al backend, en lugar de servir desde el recurso local.
¿Alguien puede explicar por qué sucede esto?
Además, si lo que QUERÍAMOS era enviar por proxy cada solicitud/URI A MENOS QUE especifiquemos el URI en una "<Ubicación/xxxx>", ¿cómo podemos lograr esto?
gracias, jim