nginx を使用したプロキシ サーバーの設定

nginx を使用したプロキシ サーバーの設定

Nginx は、リバース プロキシ機能を使用して負荷分散を実装できるほか、フォワード プロキシ機能を使用してプロキシ サーバーをセットアップすることもできます。たとえば、イントラネット環境では、インターネットに接続できるマシンで nginx をプロキシ サーバーとして実行します。他のマシンは、IP とポートを設定することで、このマシンを介してインターネットに接続できます。この記事では、公式の nginx イメージを使用しており、次の手順で簡単にプロキシ サーバーを実装できます。

ステップ1: nginxを起動する

[root@devops ~]# docker run -p 8888:8888 --name proxy-nginx -d nginx
c7baab8ea9da0a148aa9bcc1295a54391906f6be94efca7189df23ceecdbf714
[root@devops ~]#

ステップ2: nginxを設定する

コンテナに入る

[root@devops ~]# docker exec -it proxy-nginx sh

apt-get を更新する

ping/vi/ps をインストールします: apt-get update; apt-get install procps vim inetutils-ping

nginx.confを設定する

最もシンプルなプロキシ機能を実現するには、次のコンテンツを追加します。

  リゾルバ 8.8.8.8;
  サーバー{
    聞く 8888;
    位置 / {
      proxy_pass http://$http_host$request_uri;
    }
  }

残りの情報は nginx.conf の確認された内容であり、変更されていません。

# nginx.conf を cat する
ユーザー nginx;
ワーカープロセス 1;
error_log /var/log/nginx/error.log 警告;
pid /var/run/nginx.pid;
イベント {
  ワーカー接続 1024;
}
http {
  /etc/nginx/mime.types を含めます。
  デフォルトタイプ アプリケーション/オクテットストリーム;
  log_format main '$remote_addr - $remote_user [$time_local] "$request" '
           '$status $body_bytes_sent "$http_referer" '
           '"$http_user_agent" "$http_x_forwarded_for"';
  access_log /var/log/nginx/access.log メイン;
  ファイル送信オン;
  #tcp_nopush オン;
  キープアライブタイムアウト65;
  #gzip オン;
  リゾルバ 8.8.8.8;
  サーバー{
    聞く 8888;
    位置 / {
      proxy_pass http://$http_host$request_uri;
    }
  }
  /etc/nginx/conf.d/*.conf を含めます。
}
#

ステップ4: クライアントを設定する

クライアントにサーバーの IP と上記のポート 8888 を設定すると、プロキシ サーバーを介してネットワークに接続できます。

要約する

以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。これについてもっと知りたい場合は、次のリンクをご覧ください。

以下もご興味があるかもしれません:
  • CentOS 7.2 は uniapp プロジェクトを展開するための nginx Web サーバーを構築します
  • vue プロジェクトを nginx/tomcat サーバーにデプロイする実装
  • Linux サーバー nginx のアンインストールとインストールのチュートリアル
  • nginx のバージョン番号と WEB サーバー情報を隠すための解決策
  • Nginx サーバーの負荷分散戦略の詳細説明(6 種類)
  • nginx を設定して、frps サーバーと Web がポート 80 を共有するようにする方法
  • 1 つの nginx サーバーに複数のドメイン名を設定する方法
  • nginx をベースにリロードなしでアップストリーム サーバーの動的な自動起動と停止を実装する方法

<<:  MySQL 5.7.9 シャットダウン構文例の詳細な説明

>>:  Javascript を使用して、スライドバー効果のあるスライドナビゲーション プラグインを開発します。

推薦する

Vue は better-scroll を使用して水平スクロール方法の例を実現します

1. スクロールの実装原理better-scroll のスクロール原理は、ブラウザのネイティブスクロ...

MySQL でトランザクションのコミットとロールバックを実装する方法の詳細な例

最近、データベース データのスケジュールされた移行を実行する必要があります。実行プロセス中に何らかの...

高並列処理 nginx サーバー向け Linux カーネル最適化構成の説明

デフォルトの Linux カーネル パラメータは最も一般的なシナリオに基づいており、高い同時アクセス...

ES6 配列のコピーおよびフィルメソッド copyWithin() および fill() の具体的な使用法

目次バッチコピー copyWithin()配列を埋めるメソッド fill()指数の計算方法については...

Apache Webサーバーのインストールと設定方法

信頼性が高く、人気があり、簡単に構成できる Web サーバーである Apache で独自の Web ...

HTML初心者や初級者向けの提案。専門家は無視してかまいません。

感想:私はバックエンド開発者です。静的 (HTML) ページを取得すると、ページ構造と命名規則が極端...

React の調整アルゴリズム Diffing アルゴリズム戦略の詳細な説明

目次アルゴリズム戦略単一ノードの差分配列ノードの差分キー値の使用要件アルゴリズム戦略React の調...

MySQL はパスワード強度の検証をオフにします

パスワード強度検証について: [root@mysql mysql]# mysql -uroot -p...

Linux Zabbixカスタム監視およびアラーム実装プロセスの分析

ターゲットzabbix フロントエンド監視の iostat コマンドでデータの 1 つを表示します。...

開発効率を向上させる 20 の JavaScript ヒント

目次1. 配列を宣言して初期化する2. 合計、最小値、最大値を計算する3. 文字列、数値、オブジェク...

Vueのシンプルな状態管理ストアモードを理解する方法

目次概要1. store.jsを定義する2. store.js を使用するコンポーネント3. 成果を...

Mysql でよく使用される時間、日付、変換関数の概要

この記事では、主に実際のアプリケーションでよく使用されるMySQLの時刻と日付、および変換関数につい...

ウェブページで Enter キーを押すと自動的にフォームを送信し、他のページにジャンプするソリューション

ウェブページでEnterキーを押すと、フォームは自動的に送信され、他のページに移動します。クエリフォ...

js で 0ms 遅延タイマーを実装するいくつかの方法

目次キューマイクロタスク非同期/待機メッセージチャネルやっと付録ここ二日間、「タイムリーな setT...