Ho una configurazione strana. Sembra così:
Browser ----------> HTTPs Proxy ------> Apache HTTP -----> Tomcat AJP
HTTPS HTTP AJP
Sul proxy HTTPS (un proxy molto stupido), arriva un URL simile a https: //proxy.domain.com/app. Viene quindi eseguito il tunneling su Apache utilizzando HTTP come http: //apache.domain.com/app (passando l'host proxy.domain.com). Apache quindi esegue il tunneling della richiesta localmente utilizzando il protocollo AJP per ajp: // localhost: 8009 / app /.
A volte il server delle app desidera reindirizzare il percorso richiesto. Ad esempio, reindirizzare / app / su / app / webapp. Quindi, restituisce un 302 ad Apache reindirizzando il percorso - probabilmente qualcosa come ajp: // localhost: 8009 / app / webapp. Apache quindi riscrive l'URL di reindirizzamento su http: //proxy.domain.com/app/webapp. Il proxy HTTPS è stupido, quindi non analizza il reindirizzamento e cambia il http in https.
Quindi, vorrei capire se posso configurare Apache per riscrivere l'URL di reindirizzamento 302 per inviare l'utente a https.
Ecco la configurazione che ho finora nel https.conf di Apache:
ProxyPreserveHost on
RewriteEngine on
RewriteRule ^/app$ /app/ [PT]
ProxyPass /app ajp://localhost:8009/app
Ho provato ad usare ProxyPassReverse , ma non sono riuscito a capire come forzarlo a riscrivere l'URL di reindirizzamento 302 con https anziché http.
qualche idea?