SSL subdomínio httpd VirtualHost para Tomcat

1

Eu tenho vários aplicativos no servidor Tomcat. Então eu quero um subdomínio para cada aplicativo. Portanto, se um usuário quiser acessar um aplicativo, precisará colocar o link ... para acessar o aplicativo Tomcat domain.com/app1/, domínio .com / app2 / each.

Eu configurei o apache com um certificado curinga para usar o SSL. Mas não redirecionando ao acessar o subdomínio para cada aplicativo. Apenas recebendo um erro ERR_TOO_MANY_REDIRECTS.

Aqui está o arquivo ssl.conf:

<VirtualHost 10.0.0.1:443>
  ServerAdmin [email protected]
  DocumentRoot "/var/www/html"
  ServerName www.domain.com
  ServerAlias domain.com
  ErrorLog logs/ssl_error.log
  DirectoryIndex index.html
  SSLEngine on
  SSLProtocol All +TLSv1.2 -SSLv2 -SSLv3

  SSLCertificateFile /opt/certs/domain.com.crt
  SSLCertificateKeyFile /opt/certs/domain.com.key
  SSLCertificateChainFile /opt/certs/domain.com.intermediate.crt

  <Directory "/var/www/html">
    Order allow,deny
    Allow from all
  </Directory>
</VirtualHost>

<VirtualHost 10.0.0.1:443>
  DocumentRoot "/var/www/html/app1"
  ServerName app1.domain.com
  UseCanonicalName Off
  DirectoryIndex index.html

  ProxyRequests Off
  ProxyPreserveHost On

  <Proxy *>
        Order deny,allow
        Allow from all
  </Proxy>

  ProxyPass / http://localhost:8080/app1/
  ProxyPassReverse / http://localhost:8080/app1/

  SSLEngine On
  SSLProtocol All +TLSv1.2 -SSLv2 -SSLv3

  SSLCertificateFile  /opt/certs/domain.com.crt
  SSLCertificateKeyFile /opt/certs/domain.com.key
  SSLCertificateChainFile /opt/certs/domain.com.intermediate.crt

  ErrorLog /var/log/httpd/ssl_app1_error.log
  LogLevel error

  <Directory "/var/www/html/app1">
     Order allow,deny
     Allow from all
     Options None
  </Directory>
</VirtualHost>

Alguma ideia? e como manter o SSL rodando no redirecionamento, HTTPS não apenas HTTP?

Obrigado

    
por xavi.dive.kite 04.10.2016 / 17:22

1 resposta

0

A regra geral é sempre usar NameVirtualHost antes de cada VirtualHost , a menos que você saiba o que está fazendo. O modelo básico para cada porta SSL (por exemplo, 443) é:

Listen 443
SSLInsecureRenegotiation off

NameVirtualHost  *:443
<VirtualHost *:443>
...

Além disso, você estava correto ao redirecionar para o link

    
por 05.10.2016 / 16:19