`wget`エラーが発生したときにより多くのログを取得する方法

`wget`エラーが発生したときにより多くのログを取得する方法

wgetGNU / Linuxのツールについていくつかの質問があります:

# wget http://www.jdfschool.com

--2019-04-05 02:33:44-- (Trys: 3) http://www.jdfschool.com/
Connecting www.jdfschool.com|115.28.223.13|:80... Connected.
An HTTP request has been issued, waiting for a response... Connection reset by peer.
Retrying.
  1. ConnectedConnecting www.jdfschool.com|115.28.223.13|:80... Connected.TCP接続が成功したことを意味しますか?

  2. ログで見ましたがConnection reset by peer、より詳細なログがありますか?初期化問題の原因がわかりません。

ベストアンサー1

正しく仮定したように、80...接続されているとは、(Web)サービスがポート80でリッスンしていてそれに接続できることを意味します。

ブラウザ(およびその他のIPアドレス)を使用してサイトが正常に機能している場合は、connection reset by peer何を試しても機能しないというフィードバックのみを提供します。詳細を知りたい場合は、接続をスニッフィングしてみてください。

ただし、サイトの所有者にログ/デバッグを要求しないと、リセットの理由に関するより多くのデータを取得できなくなります。

その理由は、ユーザーエージェント/スパイダー/特定のページ/または設定を許可しないか、意図的にそのエラーを発生させたり、定義された期間内にページを試した後/ページをブロックするルールがある可能性があります(それらによって定義されます) )。

前述のように、これはUnixの問題自体ではなく、サイト固有のセキュリティ対策と設定に関連しています。

実際の HTTP 要求を受信するには、次を実行することもできます。

# ngrep -q "." "port 80"

または

# ngrep -q "." "port 80 and host www.jdfschool.com"

ngrep設定、HTML、DNS、およびインフラストラクチャの設定によっては、2番目のエントリがすべてのHTTPリクエストを受信するわけではありません。

@muruがコメントで指摘したように、

wget -v http://www.jdfschool.com

より便利なデータを出力することも可能です。

先に述べたように、それが起こった理由を正確に見つける可能性は希薄です。 (たとえば、Apache Webサーバーでは、mod_evasiveとmod_securityがスパイダー/乱用を抑制するように設定されることがよくあります。)

TLDRサイトの所有者の観点から見て、あなたのコマンドで何が起こるのかは予想される動作である可能性が高いです。

おすすめ記事