2016-03-23 15 views
0

私はWebサーバ設定を初めて利用しています。ここにはシナリオがあり、9002でhttps、9001でhttpで稼働しているhybris tomcatサーバがあります。私は80ポートを介してhttpsとhttpを開くmod_proxyサーバーでApache Webサーバーを構成する必要があります。私はtomcatのhttpsとhttpサイト用にmod_proxyを設定しようとしましたが、サイトはhttpだけで動作しました。顧客は80ポートしか使えません。mod_proxy apache httpsサーバをtomcat 7で設定する

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 
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構成ここ

<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"

はTomcatが ファイルのserver.xmlで、ここで何が起こっている@Benoit

+1

あなたの設定を投稿してください。 –

+0

フォーマットされたxml構成で最初のメッセージを編集し、サイトトラフHTTPSにアクセスしようとするときの動作についても説明してください。ログに記録されたエラー(ApacheまたはHybris)あなたのブラウザは何を言っていますか? –

+0

ブラウザはApacheのデフォルトテストページssl_error_logにリダイレクトします [autoindex:error] [pid 10927] [クライアントtomcat.ip:37152] AH01276:ディレクトリ/ var/www/html /を提供できません:一致するDirectoryIndex(index.html)が見つかりません、およびOptionsディレクティブ – rakiarchana

答えて

1

@christopherありがとうSSLProxyEngineということです有効でないSSL証明書を検出しているので、何もチェックしないように明示的に指示する必要があります。

この設定は本番環境ではないが、本番環境ではうまくいきません.SSL証明書をアンロードして、httpにすべてのトラフィックを 'RequestHeader set X-Forwarded-Proto' https ' Tomcatの設定に

はこのために、あなたのApacheの設定を変更し

<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> 
+0

ありがとうございます、この設定は動作しています – rakiarchana

+0

あなたは歓迎です、答えを投票してください。 –