次のコードがありますが、常に407
HTTPステータスコードが返されます。私はがつがつ食う6とグットを使用していますGoutteでプロキシ認証を使用するには?
$url = 'http://whatismyip.org';
$client = new Client();
$options = array(
'proxy' => array(
'http' => 'tcp://@x.x.x.x:8010',
),
'auth' => array('d80fe9ebasab73d21a4', '', 'basic')
);
$crawler = $client->request('GET', $url, $options);
$status = $client->getResponse()->getStatus();
echo $status; // 407
私はsetDefaultOption
でプロキシを設定しようとして始めましたが、この方法が推奨されていません。それは、コマンドラインでcurl
で動作するよう
私のユーザ名と空のパスワードは間違いなく正しいです:
curl -U d80fe9ebasab73d21a4: -vx x.x.x.x:8010 http://whatismyip.org/
私はこの上でいくつかの時間を費やしていると私は任意の助けをいただければ幸いです!
クライアントがHTTP1.1の代わりにHTTP1を使用しようとしたときに発生する可能性があります。 - curl_setopt($ curl、CURLOPT_HTTP_VERSION、CURL_HTTP_VERSION_1_1);クライアントが内部でどのように動作しているかわからない。あなたのカールバージョンを確認してください。 – DannyZB
難しいです。 Wiresharkを使用して、ネットワーク層で要求を検査します。また、PHPとGuzzleでCurlHandlerを使用してcURL拡張機能を有効にしていることを確認してください。プロキシIPの前に '@' charがあるのはなぜですか?また、 'http://[email protected]:8010'のようなプロキシアドレスを試して、' auth'オプションを省略することもできます。 – kba
@Abs:どのようにしてプロキシの問題を解決しましたか?私に知らせることができますか? – 06011991