web-dev-qa-db-ja.com

Apacheプロキシがlocalhostポートで機能しない

Apache 2.2.15をポート80で実行していて、サーブレットエンジンをローカルホストポート8983でプロキシしたい。セットアップを別のサーバーで実行しているが、CentOS 6マシンに移動した。新しいマシンでは動作しません。私の仮想ホスト構成:

 ProxyRequests Off 
 
 <Proxy *> 
 Order deny、allow 
 Allow from all 
 </ Proxy> 
 
 ProxyPass/http:// localhost:8983/
 ProxyPassReverse/http:// localhost:8983/

ブラウザを使用して直接ブラウザにアクセスすれば(そしてApacheプロキシを経由せずに)ポート8983にアクセスできますが、Apacheサーバーを経由または経由するとポートに接続できません。

プロキシされるものを http://slashdot.org のようなものに変更すると、Slashdotは正常にプロキシされます(そのため、一般にプロキシできることがわかります)。

私はApacheでデバッグログをオンにしました、そしてこれはトランザクションです:

 [Sun Apr 22 16:47:04 2012] [debug] mod_proxy_http.c(56):proxy:HTTP:canonicalising URL //localhost:8983/
[Sun Apr 22 16:47 :04 2012] [debug] proxy_util.c(1506):[client 184.39.79.7] proxy:http:found worker http:// localhost:8983/for http:// localhost:8983/
 [Sun Apr 22 16:47:04 2012] [debug] mod_proxy.c(998):Running schema http handler(attempt 0)
 [Sun Apr 22 16:47:04 2012] [debug] mod_proxy_http.c( 1962):プロキシ:HTTP:サービングURL http:// localhost:8983/
 [Sun Apr 22 16:47:04 2012] [デバッグ] proxy_util.c(2011):プロキシ:HTTP:接続を取得しましたfor(localhost)
 [Sun Apr 22 16:47:04 2012] [debug] proxy_util.c(2067):proxy:connecting http:// localhost:8983/to localhost:8983 
 [2012年4月22日16:47:04] [debug] proxy_util.c(2193):proxy:connected/to localhost:8983 
 [Sun Apr 22 16:47:04 2012] [debug] proxy_util。 c(2444):プロキシ:HTTP:ローカルホストに接続するために作成されたfam 10ソケット
 [Sun Apr 22 16:47:04 2012] [デバッグ] proxy_util.c(2 455):(13)拒否された権限:プロキシ:HTTP:[:: 1]:8983(localhost)への接続試行に失敗しました
 [Sun Apr 22 16:47:04 2012] [debug] proxy_util.c (2444):プロキシ:HTTP:ローカルホストに接続するために作成されたfam 2ソケット
 [Sun Apr 22 16:47:04 2012] [エラー](13)拒否された権限:プロキシ:HTTP:127.0への接続を試行.0.1:8983(localhost)が失敗しました
 [Sun Apr 22 16:47:04 2012] [error] ap_proxy_connect_backend disableing worker for(localhost)
 [Sun Apr 22 16:47:04 2012] [デバッグ] proxy_util.c(2029):プロキシ:HTTP:(localhost)の接続を解放しました
 [Sun Apr 22 16:47:04 2012] [デバッグ] mod_proxy_http.c(56):プロキシ:HTTP :canonicalising URL //localhost:8983/favicon.ico
[Sun Apr 22 16:47:04 2012] [debug] proxy_util.c(1506):[client 184.39.79.7] proxy:http:found worker http:// localhost:8983/for http:// localhost:8983/favicon.ico 
 [Sun Apr 22 16:47:04 2012] [debug] mod_proxy.c(998):Running scheme http handler (0を試行)
 [2012年4月22日16:47:04] [デバッグ] mod_proxy_http.c(1962):プロキシ:HTTP:サービングURL http:// localhost:8983/favicon.ico 
 [Sun Apr 22 16:47:04 2012] [debug] proxy_util.c(1949):プロキシ:HTTP:(localhost)のワーカーを再試行しています。
 [Sun Apr 22 16:47:04 2012] [エラー]プロキシ:HTTP:(localhost)の接続が無効になっています

Fam 10またはfam 2ソケットが何であるかわかりません。なぜそれが私の代替ポートにプロキシしないのかについて誰かが何か考えを持っていますか?

ありがとう!

17
ksclarke

問題の解決策は次のとおりです。

このブール値をオンにするには、次の行を使用する必要があります(ルート権限)

setsebool -P httpd_can_network_connect on

または

Sudo setsebool -P httpd_can_network_connect on

お役に立てば幸いです。参照はこちらを参照してください: https://wiki.centos.org/TipsAndTricks/SelinuxBooleans

7
Mchoeti

私は私の問題を解決しました:

私が行った場合: sestatus -b | grep httpd

私は見えます httpd_can_network_connectoffです

解決策は次のように入力することです:togglesebool httpd_can_network_connect

11
ksclarke

次のコマンドを実行して、ポート8080がリッスンしていることを確認します

netstat -tlpn

そうでない場合は、jenkinsサーバーを再起動します

Sudo /etc/init.d/jenkins start

これで動作するはずです。それが役に立てば幸い

1
Ajeet Khan