Cannot get to redirect apache on port 80 to tomcat 8443

redirect

My virtual hosts in Apache 2.4 For the regular website on Apache 2.4 port 80

ProxyPreserveHost On
ProxyRequests Off
ServerName trident.openways.us
ServerAlias openways.us/Trident
ProxyPass / https://openways.us:8443/Trident
ProxyPassReverse / https://openways.us:8443/Trident
Redirect Permanent /Trident https://openways.us:8443/Trident

To redirect calls on port 80 to Tomcat SSL

<VirtualHost *:80>  
    ServerName  trident.openways.us  
    ServerAlias openways.us/Trident  
    ProxyRequests on  
    ProxyPreserveHost On  
    <Proxy *>  
        Order deny,allow  
        Allow from all  
    </Proxy>  
     SSLProxyEngine on  
     ProxyPass /Trident  https://openways.us:8443/Trident  
     ProxyPassReverse /Trident  https://openways.us:8443/Trident  
  </VirtualHost>  

My Tomcat server.xml

<Connector port="8080" protocol="HTTP/1.1"   
           connectionTimeout="20000"  
           redirectPort="8443" />  

<Connector port="8443" scheme="https" secure="true" SSLEnabled="true"   
           SSLCertificateFile="C:\wamp\bin\apache\Apache2.4.4\conf\extra\openways.us_ssl_certificate.cer"   
           SSLCertificateKeyFile="C:\wamp\bin\apache\Apache2.4.4\conf\extra\_.openways.us_private_key.key"   
           SSLPassword="changeit"   
           SSLCertificateChainFile="C:\wamp\bin\apache\Apache2.4.4\conf\extra\-.openways.us_ssl_certificate_INTERMEDIATE.cer"   
           keyAlias="tomcat" SSLProtocol="TLSv1"/>  

<!-- Define an AJP 1.3 Connector on port 8009 -->  
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />  

Despite different configurations tested, my investigation on the web, I can not get them to work, except when the redirection is done to

http://openways.us:8080/Trident, but then without SSL

Please help recommending me the correct configuration or place to investigate

Best Answer

You have

ServerName www.openways.us/Trident
ServerAlias openways.us/Trident

This doesn't match any host as the host never contains any part of the path.

Remove them, first:

ServerName www.openways.us
ServerAlias openways.us

Then, supposedly the lower <VirtualHost *:80> is trying to be the SSL version, but it only uses SSL on its connection to the Tomcat server behind. It doesn't implement SSL to the client at all, i.e.

client <--HTTP(80)--> proxy <--HTTPS(8443)--> tomcat

While both of these would do:

client <--HTTPS(443)--> proxy <--HTTPS(8443)--> tomcat

client <--HTTPS(443)--> proxy <--HTTP(8080)--> tomcat

For that, you'd need to have a HTTPS virtual host, instead.