CentOS 7
がTomcat
のApache httpd 2.4
として設定されているssl reverse proxy
サーバーで、httpd
が接続できないことを示すエラーが発生しますTomcat
。 httpdがTomcatによって生成されたコンテンツを提供するように、このエラーを解決するにはどうすればよいですか?
ssl_error_log
さんのコメント:
[Tue Dec 16 20:20:15.007630 2014] [proxy:error] [pid 12784] (111)Connection refused: AH00957: HTTP: attempt to connect to 127.0.0.1:8080 (localhost) failed
[Tue Dec 16 20:20:15.007727 2014] [proxy:error] [pid 12784] AH00959: ap_proxy_connect_backend disabling worker for (localhost) for 60s
[Tue Dec 16 20:20:15.007752 2014] [proxy_http:error] [pid 12784] [client client.ip.address:48100] AH01114: HTTP: failed to make connection to backend: localhost
catalina.out
ファイルを読みました。startup.sh
を実行した後、Tomcat
がルートアプリを正常に起動したことを明確に示しています。私は この他の投稿 も読んでおり、SELinux
に責任があります。しかし、私は/etc/sysconfig/selinux
にSELINUX=disabled
があることを確認したので、私の問題は他の何かが原因であるようです。
reverse proxy
は今日、完全に機能していました。今日サーバーで行われた唯一の変更は、ルート戦争の新しいバージョンをTomcat
に数回アップロードし、新しいルートのたびにrestart Tomcat
とhttpd
を停止することでした。 warがアップロードされました。これには、Tomcat
をシャットダウンできるように、shutdown port
のserver.xml
を-1から有効なポート番号に変更することが含まれる場合があります。
完全なssl.conf
このリンクをクリックして を表示できます。 VirtualHost
はssl.conf
では完全に定義されており、httpd.conf
では定義されていないことに注意してください。完全なserver.xml
このリンクをクリックして を読むこともできます。
編集:
IanMcGowanのアドバイスに従うと、次の結果が得られました。
[[email protected] ~]# telnet localhost 8080
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Connection refused
[[email protected] ~]# GET / HTTP/1.0
<HTML>
<HEAD>
<TITLE>Directory /</TITLE>
<BASE HREF="file:/">
</HEAD>
<BODY>
<H1>Directory listing of /</H1>
<UL>
<LI><A HREF="./">./</A>
<LI><A HREF="../">../</A>
<LI><A HREF=".autorelabel">.autorelabel</A>
<LI><A HREF=".readahead">.readahead</A>
<LI><A HREF="bin/">bin/</A>
<LI><A HREF="boot/">boot/</A>
<LI><A HREF="db/">db/</A>
<LI><A HREF="dev/">dev/</A>
<LI><A HREF="etc/">etc/</A>
<LI><A HREF="home/">home/</A>
<LI><A HREF="lib/">lib/</A>
<LI><A HREF="lib64/">lib64/</A>
<LI><A HREF="media/">media/</A>
<LI><A HREF="mnt/">mnt/</A>
<LI><A HREF="opt/">opt/</A>
<LI><A HREF="proc/">proc/</A>
<LI><A HREF="root/">root/</A>
<LI><A HREF="run/">run/</A>
<LI><A HREF="sbin/">sbin/</A>
<LI><A HREF="srv/">srv/</A>
<LI><A HREF="sys/">sys/</A>
<LI><A HREF="tmp/">tmp/</A>
<LI><A HREF="usr/">usr/</A>
<LI><A HREF="var/">var/</A>
<LI><A HREF="www/">www/</A>
</UL>
</BODY>
</HTML>
また、Tomcatが次のように実行されているかどうかをテストするために8080を開きました。
http : / / mydomain.com
とhttp : / / my.ip.address
を入力すると、ブラウザに何も表示されませんでした。 https : / / mydomain.com
と入力すると、サービスが利用できないことを示す同じエラーが表示されます。
catalina.out
の最後の2行は、昨日サーバーを再起動してから変更されていません。次のとおりです。
16-Dec-2014 20:19:35.967 INFO [localhost-startStop-1] org.Apache.catalina.start$
16-Dec-2014 20:19:35.970 INFO [main] org.Apache.catalina.startup.Catalina.start$ Server startup in 46065 ms
EDIT#2:
Tomcatが実行されているかどうかをテストするために、次のことを行いました。
[[email protected]]# ps aux | grep Tomcat
root 6858 0.7 18.5 3826248 1095780 ? Sl Dec12 51:03 Java -Djava.util.logging.config.file=/opt/Tomcat/conf/logging.properties -Djava.util.logging.manager=org.Apache.juli.ClassLoaderLogManager -Djava.endorsed.dirs=/opt/Tomcat/endorsed -classpath /opt/Tomcat/bin/bootstrap.jar:/opt/Tomcat/bin/Tomcat-juli.jar -Dcatalina.base=/opt/Tomcat -Dcatalina.home=/opt/Tomcat -Djava.io.tmpdir=/opt/Tomcat/temp org.Apache.catalina.startup.Bootstrap start
root 12524 0.2 20.1 3891788 1187888 ? Sl Dec15 6:20 Java -Djava.util.logging.config.file=/opt/Tomcat/conf/logging.properties -Djava.util.logging.manager=org.Apache.juli.ClassLoaderLogManager -Djava.endorsed.dirs=/opt/Tomcat/endorsed -classpath /opt/Tomcat/bin/bootstrap.jar:/opt/Tomcat/bin/Tomcat-juli.jar -Dcatalina.base=/opt/Tomcat -Dcatalina.home=/opt/Tomcat -Djava.io.tmpdir=/opt/Tomcat/temp org.Apache.catalina.startup.Bootstrap start
root 16404 0.2 15.0 3630784 887836 ? Sl Dec16 2:36 Java -Djava.util.logging.config.file=/opt/Tomcat/conf/logging.properties -Djava.util.logging.manager=org.Apache.juli.ClassLoaderLogManager -Djava.endorsed.dirs=/opt/Tomcat/endorsed -classpath /opt/Tomcat/bin/bootstrap.jar:/opt/Tomcat/bin/Tomcat-juli.jar -Dcatalina.base=/opt/Tomcat -Dcatalina.home=/opt/Tomcat -Djava.io.tmpdir=/opt/Tomcat/temp org.Apache.catalina.startup.Bootstrap start
root 17987 0.0 0.0 112640 964 pts/0 R+ 14:20 0:00 grep --color=auto Tomcat
これを修正するには、最初にブール値を動的に設定してテストします(まだ永続的ではありません)。
/usr/sbin/setsebool httpd_can_network_connect 1
それが機能する場合は、デフォルトのポリシーが変更され、この設定が再起動後も維持されるように設定できます。
/usr/sbin/setsebool -P httpd_can_network_connect 1