2

PHP(バージョン5.3.12)を使用してWindows Server 2008マシンからcURL要求を送信しようとしていますが、エラーが発生し続けますCould not resolve proxy: http=127.0.0.1; Host not found。私が言う限り、私はプロキシを使用していません-設定されていません、システム全体の設定がないことを確認するためCURLOPT_PROXYに実行netsh winhttp show proxyしました、私はマシン上のすべてのブラウザをチェックして何も確認していませんプロキシを使用するように構成されています(これが影響を与える可能性がある場合に備えて)。cURLが1)プロキシを使用していて、2)プロキシに接続できないと主張する理由を理解するのに苦労しています。

を介してプロキシの使用を明示的に無効にすることでエラーを解決できますcurl_setopt($curl, CURLOPT_PROXY, '');が、これは最善の解決策ではありません-cURLを使用する場所の多くはライブラリ内にあり、それは苦痛です(言うまでもなく)維持可能ではありません)周りを回って、この行をそれらすべてにハックします。私はむしろ根本的な原因を見つけてそこで修正したいと思います。

それが役に立ったら、これはこれまでのところPOSTリクエストでのみ私に起こりました。コマンドラインcURL(Git bashプロンプトから)は正常に機能します。これらの呼び出しは、開発マシンからも正常に機能するため、私のマシンに固有のもののようです。

上記のハックを適用する必要がある場合は適用しますが、それに頼る前に、SOの善良な人々に尋ねると思いました-プロキシの使用を構成している可能性のある欠落している場所はありますか?追加し忘れた役立つ情報があれば教えてください。

4

1 に答える 1

1

cURLは、プロキシ設定を環境変数に依存しています。これらは、「システムの詳細設定」からWindowsで設定できます。

最適な制御のために設定および/または変更する必要のある変数は、「http_proxy」、「HTTPS_PROXY」、「FTP_PROXY」、「ALL_PROXY」、および「NO_PROXY」です。

ただし、プロキシの使用をまったく避けたい場合は、システム変数を作成してhttp_proxyに設定しlocalhost、さらにシステム変数NO_PROXYを作成してに設定することで*、cURLにプロキシの使用を回避するように指示できます。任意の接続。

いずれの場合も、システム環境変数の変更を強制的に認識させるために、必ずコマンドウィンドウを再起動してください。

[ソース-cURLマニュアル]

于 2012-07-10T08:33:48.230 に答える