質問: curl_exec($ ch)はもはや外部ドメインでは実行されません。なぜですか? 私はcURLを使用してサイトのコンテンツをスクラップしていましたが、最近私のページは `curl_exec($ ch)`に達したときにハングしています。いくつかのテストの後、私は自分自身のドメインから他のページをロードできることに気付きましたが、外部からロードしようとすると `connect()タイムアウト!`エラーが発生します。 ここで私が使っていたものの簡略版があります: ``` ``` 私の `phpinfo()`からホストに関するいくつかの情報があります: ``` PHP Version 5.3.1 cURL support enabled cURL Information 7.19.7 Host i686-pc-linux-gnu ``` 私はSSHへのアクセス権を持っていないか、php.iniファイルを変更していません(しかし私はそれを読むことができます)。しかし、最近何かが外部ドメインへのcURLアクセスをブロックするように設定されているかどうかを知る方法はありますか?それとも私が逃したかもしれない何か他にありますか? ありがとう、 デイブ
回答: 私はそのような設定については気づいていませんが、それほど意味をなさないでしょう。 あなたがコンソールにアクセスしていないリモートWebサーバー上にいると言えば、あなたの活動がホストによって検出されたか、それが原因で問題が発生し、ファイアウォールをつけた可能性が高いと思います。 サイレントiptables DROPがこれを引き起こします。 Googleを掻き集めるときには、リクエストがいっぱいで、プロキシを使用する必要があります。自分のウェブサーバーでない場合は、ウェブサーバーのプライマリIPを悪用しないでください。これはTOS違反の可能性が高いため、Googleから禁止されると(たとえ起こりうるとしても)訴訟を起こす可能性があります。 Googleランクチェッカーを見てください。これは、CURLと適切な使い方を正確に実行するPHPスクリプトですIP管理。 私はあなたの側のファイアウォールよりもタイムアウトの原因となっているものは考えられません。