公開 Web サイトの URL をごく簡単にスクレイピングする必要があるスクリプトを作成しています。PHPでスクリプトを書いていますが、コマンドラインからもテストしましたが、同じ問題が存在します。
基本的に、これは私が得るエラーです:
curl: (7) couldn't connect to host
私はこのコマンドを見ました:
netstat -ac 5 |grep tcp
そして、SYN_SENT パケットが送信されているのを確認できます (ただし、cURL を使用してポート 80 を指定したにもかかわらず、ポート 58047 で送信されているように見えます) が、サーバーは SYN_ACK で応答しません。
ブラウザを使用すると、同じ正確なアドレスを非常に簡単に表示できます。
彼らは約 1 週間前にサーバーで何らかの攻撃を受けたため、ファイアウォールまたは iptables を使用してパケットをドロップしていると想像する必要がありますが、1 つの要求を送信しようとしています。
サーバーがcURLを使用して応答することがわかっているブラウザエージェント文字列を送信しようとしましたが、残念ながら何もありません。スクリプトは AWS EC2 インスタンス上にあります。
未知のものを排除する限り、何をすべきかさえわかりません。TCPトラフィックを実際に監視する方法や、私が見ているものをよく理解している方法がわかりませんが、これを理解したいと思います.
何かアドバイス?
PS: cURL が正常に動作することを確認しました。まったく問題なく google.com をプルしました。