web-dev-qa-db-ja.com

一部のNginx構成がWgetを使用したダウンロードエージェントをブロックするのはなぜですか?

一部のNginx構成では、次のようにWgetを使用したダウンロードエージェントがブロックされることに気付きました。

if ($http_user_agent ~* LWP::Simple|wget) {
    return 403;
}

Wgetをブロックする理由Nginx設定で上記のコードを使用すると、Joomlaサイトから正規ユーザーがダウンロードできるPDFやその他の一般的なファイルのダウンロードもブロックされますか?

3
Neel

ユーザーエージェントwget

ユーザーエージェントwgetをブロックすると、wgetを使用して端末内のファイル(Linux、MacOS、Armなど)をダウンロードするオペレーティングシステムがブロックされます。これにより、wget example.pdfを使用したすべてのファイルのダウンロードがブロックされます。

しかし、なぜwgetをブロックするのですか?

この質問には正しいことも間違ったこともありませんが、一般的にウェブマスターは、サイト訪問者が実際にページにアクセスしてコンテンツをダウンロードすることを望んでいます。これは多くのホットリンク防止方法の1つです。

何がブロックされますか?

前述のように、ターミナルアプリケーションに関連付けられたユーザーエージェントwgetのみが、.htmlファイルを含むすべてのファイルタイプが禁止されます。ブラウザは、デフォルトでは使用できないwgetユーザーエージェントを使用しない限り影響を受けませんが、知識のあるユーザーのみがこれを達成できますが、ユーザーはそのユーザーエージェントに対してユーザーに利益をもたらさないため、実際には誰のブラウザーでもブロックは発生しません。

wgetが便利な場合

ユーザーがwgetを使用してPDFファイルまたはビデオクリップをダウンロードすることは、ミラーリングする場合や、ファイルサイズが非常に大きく、リモートに保存する場合を除き、あまり役に立ちません。ただし、JoomlaやWordpressなどのコンテンツ管理システムの展開など、それぞれ数百のファイルを持ち、次のものを使用する場合には役立ちます。

  • wget http://www.example.com/cms.tar
  • tar xvf cms.tar

上記のアクションを実行することにより、プロトコルの制限により、SFTPまたはFTP方式を使用するよりも数分ではなく数秒以内にコンテンツ管理システムを展開できます。そのため、wgetはオペレーティングシステム、コンテンツ管理システムなどに使用するべきではありませんが、一般的にほとんどのWebサイトでは役に立たないため、ブロックすることは大きな問題にはなりません。

3
Simon Hayter