web-dev-qa-db-ja.com

ローカルネットワークのプロキシサーバーとしてのNginx

現在、ローカルネットワークのプロキシサーバーとしてsquidを使用していますが、完全には満足していません。 Nginxはローカルネットワーク上のプロキシサーバーとしての使用にも適していますか?この目的で積極的に使用されていますか?

6
Hyperfocus

nginxは「リバース」プロキシと見なすことができます(その「アップストリームサーバー」機能により)...この役割の場合、それは事実上「ロードバランサー」です。

squid httpプロキシ、ソックスなどの「通常の」プロキシ。エンドユーザーに代わってコンテンツをフェッチし、エンドユーザーの前に座って、インターネットWebサーバーにTCP/IP呼び出しを行い、コンテンツを理想的にキャッシュします。

nginxは、リバースプロキシとして実行されると、サーバーエンドポイントの前に置かれ、通常はそれらの間で負荷分散されます。

Squidは、「通常の」httpプロキシに最適です...背後にいるエンドユーザーのコンテンツを取得してキャッシュするプロキシ。

6
nandoP

NginxはWebサーバーです。そのため、Squidを頻繁に置き換えるために使用されていません;)

Nginxプロキシモード は異なり、基本的にはHTTPリクエストを別のサーバーに転送するために使用されます)

2
laurent

NGINXは実際には多くのものです。リバースプロキシまたはフォワード(「通常」)プロキシの両方として構成できます。以下は、NGINXのアプリケーション機能(機能)のリストです。

  • Webプロキシ(リバースまたはフォワード)
  • APIプロキシ
  • ウェブサーバー
  • ロードバランサー
  • WAF(ウェブアプリケーションファイアウォール)
  • コンテンツキャッシュ
  • HTTP/2ゲートウェイ
  • TLS終了ポイント

これらの機能が3つ以上必要な場合は、NGINXを使用します。そうでない場合は、これらの機能の1つまたは2つを提供する他のソリューションの方が適切な場合があります(ただし、要件は時間の経過とともに変化し、その点で、NGINXはフットプリントの小さいコンポーネントです) 、柔軟性を提供し、将来の進化のポイントを満たすことができます)。

1
Bran

他の投稿者が指摘したように、nginxはリバースプロキシです。つまり、Webサーバーのように見え、ホストする他のWebサーバーの前に配置されます。これは、フォワードプロキシ(LAN上のユーザーがインターネットに接続する)には適していません。

Squidに満足せず、Windowsプラットフォームを使用している場合は、 WinGate などの代替手段を試すことができます。免責事項、私は WinGate の作者であるQbikのために働いています

0
Adrien