web-dev-qa-db-ja.com

Git:CONNECT後にプロキシからHTTPコード503を受信しました

この問題に関連する多くの投稿を確認しましたが、問題が解決しないようです。だから今、皆さんが私に魔法の答えをくれることを願っています。

私はIntellijを使用しています(ただし、SourceTreeでも試してみました)。Fisheyeからリポジトリをプル/プッシュ/クローンします。ただし、エラーが発生します。

git -c diff.mnemonicprefix=false -c core.quotepath=false fetch Origin

fatal: unable to access 'https://myUser@myUrl/fisheye/git/myRepo.git/': Received HTTP code 503 from proxy after CONNECT

503に関するヒントは、この問題が1週間続くため、メンテナンスによる一時的なダウンタイムが機能しないことを意味します。

プロキシ設定の誤り/欠落に関するヒントも機能していないようです。システムgitとIDE(Intellij)用にhttpおよびhttpsプロキシをセットアップしました。

以前は機能していましたが、リポジトリのクローンを作成することができました。次に、新しいブランチを作成し、いくつかの変更を加えて、マスターにプッシュバックしたいと思いました。

私はいくつかの賢いヒントを本当に楽しみにしています。

これまでのところありがとう

[〜#〜] update [〜#〜]

追加した:

export GIT_TRACE_PACKET=1export GIT_TRACE=1export GIT_CURL_VERBOSE=1

そして私は次を受け取りましたlog

$ git fetch
trace: built-in: git 'fetch'
trace: run_command: 'git-remote-https' 'Origin' 'https://[email protected]/randomGit.git/'
* Couldn't find Host myWebService in the _netrc file; using defaults
*   Trying 15.46.16.11...
* Connected to myProxy.com (15.46.16.11) port 8080 (#0)
* Establish HTTP proxy tunnel to myWebService.de:443
> CONNECT myWebService.de:443 HTTP/1.1
Host: webapp-entw.mlp.de:443
User-Agent: git/1.9.5.msysgit.1
Proxy-Connection: Keep-Alive
Pragma: no-cache

< HTTP/1.1 503 Service Unavailable
< Cache-Control: no-cache
< Pragma: no-cache
< Content-Type: text/html; charset=utf-8
< Proxy-Connection: close
< Connection: close
< Content-Length: 732
<
* Received HTTP code 503 from proxy after CONNECT
* Closing connection 0
fatal: unable to access 'https://[email protected]/randomGit.git/': Received HTTP code 503 from proxy after CONNECT

プロキシがwebappアドレスを認識しないことを発見したので、Privoxyをインストールし、git用のリクエストを除くすべてのリクエストを渡すように指示しました。そしてそれは機能します。

したがって、リポジトリに接続する必要がある場合は、プロキシをスキップして直接接続します。

私はこれと同じエラーコードを持っていました。私の場合、症状は、リモートリポジトリに正常にプッシュできたが、プルできなかったというものでした...私の場合、名前解決の問題であることが判明しました。

まず、これらの設定がネットワークイベントにさらに光を当てることを発見しました。

export GIT_TRACE_PACKET=1
export GIT_TRACE=1
export GIT_CURL_VERBOSE=1

これらの設定で、私は次のようなトレースを受け取りました:

Prompt$ git pull
...
15:21:17.015575 run-command.c:351       trace: run_command: 'git-remote-https' 'Origin' 'https://gitub.com/USERNAME/REPO'
* Couldn't find Host gitub.com in the .netrc file; using defaults
* Hostname was NOT found in DNS cache
*   Trying PROXY-SERVER-IP-ADDRESS...
* Connected to (PROXY-SERVER-IP-ADDRESS) port 80 (#0)
* Establish HTTP proxy tunnel to gitub.com:443
> CONNECT gitub.com:443 HTTP/1.1
Host: gitub.com:443
User-Agent: git/2.3.2 (Apple Git-55)
Proxy-Connection: Keep-Alive
Pragma: no-cache

< HTTP/1.1 503 Service Unavailable
< Cache-Control: no-cache
< Pragma: no-cache
< Content-Type: text/html; charset=utf-8
< Proxy-Connection: close
< Connection: close
< Content-Length: 787
< 
* Received HTTP code 503 from proxy after CONNECT
* Connection #0 to Host PROXY-SERVER-IP-ADDRESS left intact
fatal: unable to access 'https://gitub.com/USERNAME/REPO/': Received HTTP code 503 from proxy after CONNECT

Github.com、次にwww.github.comにpingを実行したところ、いくつかの異なる結果に気づきました。これにより、オリジンURLを次のように更新するように促されました。

git remote set-url Origin https://www.github.com/USERNAME/REPO

「www」を追加するだけです。この場合、オリジンURLに接続することで接続の問題が解決しました。 503はもうありません-プッシュとプルの両方が成功します。

更新

更新されたトレースに基づくと、これは私が抱えていた問題と非常によく似ています。使用しているリポジトリサーバーの実際のIPアドレス(ホスト名ではなく)を一時的に置き換えることをお勧めします。それが機能する場合は、おそらく/ etc/hostsを変更するなど、名前解決の解決策を検討してください。また、ドメイン名だけでなく完全なホスト名を含めるためにgit remote set-url Originを試したことを確認できますか?

2
cmbind55