2016-03-28 9 views
0

Wir haben zwei Apache 2.4.6 Webserver und einen hybris Tomcat 7 Server im gleichen Netzwerk, ich muss die Webserver mit mod_proxy konfigurieren, um http und https Anfragen weiterzuleiten hybris server und die Webserver haben unterschiedliche Domainnamen. Meine Frage ist, wie Tomcat konfiguriert wird, um Anfragen von zwei verschiedenen Domain-Namen zu akzeptieren und der Parameter proxyName ist ausreichend. Im Folgenden finden Sie meine grundlegende mod_proxy-Konfiguration.Weiterleiten von zwei Webservern https und http Anfragen an einzelne hybris Tomcat Server

LoadModule headers_module modules/mod_headers.so 
LoadModule proxy_module modules/mod_proxy.so 
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so 
LoadModule proxy_connect_module modules/mod_proxy_connect.so 
LoadModule proxy_http_module modules/mod_proxy_http.so 
LoadModule ssl_module modules/mod_ssl.so 

<VirtualHost *:80> 
DocumentRoot /var/www/html 
ProxyPreserveHost On 
ProxyPass/http://tomcatserver.ip:9001/ 
ProxyPassReverse/http://tomcatserver.ip:9001/ 
</VirtualHost> 

<VirtualHost *:443> 
    DocumentRoot /var/www/html 
    ProxyPreserveHost On 
    ServerName webserver.ip 
    SSLEngine on 
    SSLProxyEngine On 
    SSLProxyVerify none 
    SSLProxyCheckPeerCN off 
    SSLProxyCheckPeerName off 
    SSLProxyCheckPeerExpire off 
    ProxyPass/https://tomcatserver.ip:9002/ 
    ProxyPassReverse/https://tomcatserver.ip:9002 

    SSLCertificateFile /etc/ssl/certs/webserverdomain.crt 
    SSLCertificateKeyFile /etc/ssl/certs/webserverdomain.key  
    </VirtualHost> 

server.xml configuration

<Connector port="${tomcat.http.port}" maxHttpHeaderSize="8192" maxThreads="${tomcat.maxthreads}" protocol="org.apache.coyote.http11.Http11Protocol" executor="hybrisExecutor" enableLookups="false" acceptCount="100" connectionTimeout="20000" URIEncoding="UTF-8" disableUploadTimeout="true" proxyName="webserverdomainname" proxyPort="80" /> /> <Connector port="${tomcat.ssl.port}" maxHttpHeaderSize="8192" maxThreads="150" protocol="org.apache.coyote.http11.Http11Protocol" executor="hybrisExecutor" enableLookups="false" acceptCount="${tomcat.acceptcount}" connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="UTF-8" SSLEnabled="true" proxyName="webserverdomainname" proxyPort="443" scheme="https" secure="true" clientAuth="false" sslProtocol = "TLS" keystoreFile="${catalina.home}/lib/keystore" keystorePass="123456"enter code here

Antwort

2

Wenn ich richtig verstehe haben Sie 2 Apache Webserver mit 2 verschiedenen Domainnamen, die auf den gleichen Hybris Tomcat verbinden möchten.

Wenn dies korrekt ist, dann müssen Sie nur die Hybris Website-URL-Zuordnung konfigurieren, um alle erforderlichen Domänennamen zu erfassen.

auch über den Proxy-Namen, von Tomcat 7 Dokumentation:

Proxy Name: Wenn dieser Connector in einer Proxy-Konfiguration verwendet wird, configure dieses Attribut der Servernamen angeben, für zurückgegeben werden Aufrufe an request.getServerName(). Weitere Informationen finden Sie unter Proxy-Unterstützung. Informationen.

Wenn Sie Tomcat konfigurieren mussten, um verschiedene Domain-Namen mit verschiedenen Hosts zu vergleichen, werfen Sie einen Blick auf the host container.

+0

Dank @Benoit Vanalderweireldt, ich werde dies versuchen und Ihnen die Ergebnisse wissen lassen. – rakiarchana