複数のドメイン名に対する Nginx リバース プロキシを使用した HTTP および HTTPS サービスの実装

複数のドメイン名に対する Nginx リバース プロキシを使用した HTTP および HTTPS サービスの実装

現在、Nginx は、Web サービスを提供するために、Windows ベースの IIS と Linux ベースの Apache サーバーの 2 つの Web サイトをリバース プロキシしています。

現在、外部にサービスを提供する必要がある新しいプロジェクト Web ページがあります。プロキシ サーバーに別の Web サイトを追加し、HTTPS アクセスを使用して、HTTP から HTTPS に自動的にジャンプする必要があります。新しい Web ページは静的ページなので、Docker を使用して Nginx プロキシ サーバーにデプロイされます。関連する証明書は Let's Encrypt を通じて取得されます。これらはすべて個別の証明書であり、ワイルドカード証明書は適用されません。

Nginx プロキシ側に SSL 証明書を展開するだけで済みます。バックエンドに SSL を展開せずに HTTPS アクセスを実装することもできます。

Nginx プロキシ サーバーの構成:

ワーカープロセスは自動です。

error_log /var/log/nginx/error.log 警告;
pid /var/run/nginx.pid;

イベント {
 ワーカー接続 1024;
}

http {
 /usr/local/nginx/conf/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 オン;
 tcp_nodelay オン;

アップストリーム dx.exzel.co.nz {

 サーバー 127.0.0.1:8080;
}

アップストリーム mybusiness.exzel.co.nz {

 サーバー 192.168.1.252:443;
}

サーバー{
 聞く 80;
 サーバー名 dx.exzel.co.nz;
 ^(.*) https://dx.exzel.co.nz を永久に書き換えます。
}
サーバー{
 聞く 443;
 サーバー名 dx.exzel.co.nz;
 sslオン;
 ssl_certificate /etc/letsencrypt/live/dx.exzel.co.nz/fullchain.pem;
 ssl_certificate_key /etc/letsencrypt/live/dx.exzel.co.nz/privkey.pem;
 ssl_session_timeout 5分;
 ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
 ssl_プロトコル TLSv1 TLSv1.1 TLSv1.2;
 ssl_prefer_server_ciphers をオン;
 アクセスログ /var/log/nginx/ccieerror.log ;
 位置 / {
   proxy_set_header ホスト $host;
   proxy_set_header X-Real-IP $remote_addr;

      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
   proxy_pass http://dx.exzel.co.nz;

 }
}

サーバー{
 聞く 80;
 サーバー名 mybusiness.exzel.co.nz;
 ^(.*) https://mybusiness.exzel.co.nz を永続的に書き換えます。
}
サーバー{
 聞く 443;
 サーバー名 mybusiness.exzel.co.nz;
 sslオン;
 ssl_certificate /etc/letsencrypt/live/mybusiness.exzel.co.nz/fullchain.pem;
 ssl_certificate_key /etc/letsencrypt/live/mybusiness.exzel.co.nz/privkey.pem;
 ssl_session_timeout 5分;
 ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
 ssl_プロトコル TLSv1 TLSv1.1 TLSv1.2;
 ssl_prefer_server_ciphers をオン;
 アクセスログ /var/log/nginx/mybusiness.log ;
 位置 / {
   proxy_set_header ホスト $host;
   proxy_set_header X-Real-IP $remote_addr;

      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
   proxy_pass https://mybusiness.exzel.co.nz;

 }
}

サーバー{
 聞く 80;
 サーバー名 www.empnz.co.nz empnz.co.nz;
  位置 / {
    プロキシパス http://192.168.1.15 ;
    }
 }

}

Nginx リバース プロキシを使用した複数ドメイン名の HTTP および HTTPS サービスの実装に関するこの記事はこれで終わりです。Nginx リバース プロキシ HTTP および HTTPS に関する関連コンテンツの詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • nginx httpsリバースプロキシtomcatを実装する2つの方法
  • Nginx サーバーの https 設定方法の例
  • nginx サーバーの http を https にリダイレクトする正しい方法の詳細な説明
  • Nginx による https サーバー構築チュートリアル
  • Alibaba Cloud LINUXサーバーでのHTTPS(NGINX)設定の詳細な説明
  • Nginx で HTTPS サーバーを構築し、HTTPS アクセスを強制する方法
  • Windows で Nginx を使用して https サーバーとリバース プロキシを構成する際の問題

<<:  vue3 のさまざまなファイルタイプのプレビュー機能の例

>>:  WeChatミニプログラムでのマップの正しい使用例

推薦する

VPSサーバーでよく使われるパフォーマンステストスクリプトの概要

これは、VPS サーバー用の一般的なワンクリック パフォーマンス テスト スクリプトです。マシンの構...

CentOS 6 は Docker を使用して Zookeeper 操作例を展開します

この記事では、Docker を使用して Centos6 に Zookeeper をデプロイする方法に...

MySQLのロック機構に関する最も包括的な説明

目次序文グローバルロック完全なデータベース論理バックアップFTWRL と set global re...

フレックスレイアウトの改行スペースでの align-content の使用

1. この記事で実装した効果図は以下のとおりです。レイアウトの右側に Flex レイアウトを使用し、...

Docker でコンテナのポート マッピングを動的に変更する方法

前書き: Docker のポート マッピングは、多くの場合、Docker Run コマンド中に -p...

MySQLのlike演算子の詳細

1. はじめに不明な値または部分的に既知の値をフィルタリングする場合は、like 演算子を使用でき...

MySQLクエリ最適化分析チュートリアルをステップバイステップで教えます

序文MySQL は、強力なクエリ機能、高いデータ一貫性、高いデータ セキュリティ、およびセカンダリ ...

ubuntu20.04 上の CLion2020.1.3 での ROS のインストールと設定の詳細な説明

1. CLionをダウンロード、インストール、アクティベートするオンラインで提供されるチュートリアル...

Windows および Linux での Redis のインストールとデーモン設定

# Windows および Linux 上の Redis のインストール デーモン構成Redis の...

Nginx での SSL 証明書のインストールと展開手順の概要

目次問題の説明:インストール手順1. 準備2. サーバーにリモート接続する3. 証明書と秘密鍵ファイ...

Windows での PyTorch 開発環境のインストール チュートリアル

アナコンダのインストールAnaconda は、Python の使用を容易にするために作成されたソフト...

MySQLはbinlogを通じてデータを復元する

目次MySQL ログファイルバイナリログBinlogログがオンになっていますログ記録を有効にする方法...

Dockerコンテナ監視の原理とcAdvisorのインストールおよび使用方法

本番環境におけるコンテナの稼働状況を監視することは非常に重要です。監視を通じて、コンテナの稼働状況を...

ルート権限なしでログインするためのDockerソリューション

docker コマンドを初めて使用する場合、権限の問題を確認するメッセージが表示されます。 unix...

MySQL 5.7.17 のインストールと設定方法のグラフィックチュートリアル

この記事では、MySQL 5.7.17のインストールと設定方法を参考までに紹介します。具体的な内容は...