Nginx 仮想ホストの詳細な分析

Nginx 仮想ホストの詳細な分析

1. 仮想ホスト

1.1 仮想ホストの概念

Nginx の場合、各仮想ホストは同じサーバー内の互いに独立したサイトに相当し、1 つのホストで複数の Web サービスを外部に提供できます。各仮想ホストは独立しており、互いに影響を及ぼしません。

1.2 仮想ホストタイプ

仮想ホストの設定は Nginx を通じて行うことができます。Nginx は 3 種類の仮想ホスト設定をサポートしています。

  • IP ベースの仮想ホスティング (あまり使用されていない)
  • ドメインベースの仮想ホスティング
  • ポートベースの仮想ホスト

2. IP仮想ホストに基づく

2.1 複数のIPアドレスの設定

 [root@nginx ~]# ifconfig eth0:0 172.24.8.70 ブロードキャスト 172.24.8.255 ネットマスク 255.255.255.0
 [root@nginx ~]# ipアドレス | grep 172
 inet 172.24.8.71/24 brd 172.24.8.255 スコープ グローバル noprefixroute eth0
 inet 172.24.8.72/24 brd 172.24.8.255 スコープ グローバル セカンダリ eth0:0

ヒント: 上記のように、同じホストに複数の IP アドレスを追加します。

2.2 サイトディレクトリを作成する

 [root@nginx ~]# mkdir /usr/share/nginx/ipvhost01/
 [root@nginx ~]# mkdir /usr/share/nginx/ipvhost02/
 [root@nginx ~]# echo '<h1>Ipvhost01</h1>' > /usr/share/nginx/ipvhost01/index.html
 [root@nginx ~]# echo '<h1>Ipvhost02</h1>' > /usr/share/nginx/ipvhost02/index.html

2.3 仮想ホストの設定

 [root@nginx ~]# vi /etc/nginx/conf.d/ipvhost.conf
 サーバー{
 listen ; #ポート server_name ipvhost.odocker.com をリッスンします ...; #仮想ホスト名とIPを設定します
 位置 / {
 root /usr/share/nginx/ipvhost; #一致するパスを要求 index index.html; #ホームページを指定 access_log /var/log/nginx/ipvhost.access.log main;
 error_log /var/log/nginx/ipvhost.error.log 警告;
 }
 }
 サーバー{
 聞く ;
 サーバー名 ipvhost.odocker.com ...;
 位置 / {
 ルート /usr/share/nginx/ipvhost;
 インデックス index.html;
 access_log /var/log/nginx/ipvhost.access.log メイン;
 error_log /var/log/nginx/ipvhost.error.log 警告;
 }
 }
[root@nginx ~]# nginx -t -c /etc/nginx/nginx.conf #設定ファイルを確認する [root@nginx ~]# nginx -s reload #設定ファイルを再読み込みする

2.4 確認と検証

ブラウザ アクセス: ipvhost01.odocker.com。
クリップボード
ブラウザ アクセス: ipvhost02.odocker.com。
クリップボード

3. ドメイン名ベースの仮想ホスト

3.1 サイトディレクトリを作成する

 [root@nginx ~]# mkdir /usr/share/nginx/webvhost01/
 [root@nginx ~]# mkdir /usr/share/nginx/webvhost02/
 [root@nginx ~]# echo '<h1>Webvhost01</h1>' > /usr/share/nginx/webvhost01/index.html
 [root@nginx ~]# echo '<h1>Webvhost02</h1>' > /usr/share/nginx/webvhost02/index.html

3.2 仮想ホストの設定

 [root@nginx ~]# vi /etc/nginx/conf.d/webvhost.conf
 サーバー{
 聞く ;
 サーバー名 webvhost.odocker.com;
 位置 / {
 ルート /usr/share/nginx/webvhost;
 インデックス index.html;
 access_log /var/log/nginx/webvhost.access.log メイン;
 error_log /var/log/nginx/webvhost.error.log 警告;
 }
 }
 サーバー{
 聞く ;
 サーバー名 webvhost.odocker.com;
 位置 / {
 ルート /usr/share/nginx/webvhost;
 インデックス index.html;
 access_log /var/log/nginx/webvhost.access.log メイン;
 error_log /var/log/nginx/webvhost.error.log 警告;
 }
 }
[root@nginx ~]# nginx -t -c /etc/nginx/nginx.conf #設定ファイルを確認する [root@nginx ~]# nginx -s reload #設定ファイルを再読み込みする

3.3 確認と検証

ブラウザ アクセス: webvhost01.odocker.com。
クリップボード
ブラウザ アクセス: webvhost02.odocker.com。
クリップボード

4 つのポートベースの仮想ホスト

4.1 サイトディレクトリを作成する

[root@nginx ~]# mkdir /usr/share/nginx/portvhost01/
 [root@nginx ~]# mkdir /usr/share/nginx/portvhost02/
 [root@nginx ~]# echo '<h1>Portvhost01</h1>' > /usr/share/nginx/portvhost01/index.html
 [root@nginx ~]# echo '<h1>Portvhost01</h1>' > /usr/share/nginx/portvhost02/index.html

4.2 仮想ホストの設定

 [root@nginx ~]# vi /etc/nginx/conf.d/portvhost.conf
 サーバー{
 聞く ;
 サーバー名 portvhost.odocker.com;
 位置 / {
 ルート /usr/share/nginx/portvhost;
 インデックス index.html;
 access_log /var/log/nginx/portvhost.access.log メイン;
 error_log /var/log/nginx/portvhost.error.log 警告;
 }
 }
 サーバー{
 聞く ;
 サーバー名 portvhost.odocker.com;
 位置 / {
 ルート /usr/share/nginx/portvhost;
 インデックス index.html;
 access_log /var/log/nginx/access_portvhost.log メイン;
 }
 }
 [root@nginx ~]# nginx -t -c /etc/nginx/nginx.conf #設定ファイルを確認する [root@nginx ~]# nginx -s reload #設定ファイルを再読み込みする

4.3 確認と検証

ブラウザアクセス: portvhost01.odocker.com:8080
クリップボード
ブラウザアクセス: portvhost02.odocker.com:8081
クリップボード

Nginx 仮想ホストに関するこの記事はこれで終わりです。Nginx 仮想ホストに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Nginx で仮想ホストと指定されたアクセス パスを設定する方法
  • Nginx 仮想ホスト設定例 (複数のウェブサイト構成)
  • Nginx 仮想ホストを構成する 3 つの方法 (ドメイン名に基づく)
  • nginx 仮想ホスト設定例の詳細な説明
  • nginx で仮想ホストを構成するための詳細な手順
  • Nginx の仮想ホストに関するあまり知られていない知識のまとめ

<<:  Vue のループフォーム項目例の詳細な説明

>>:  MySQL水平および垂直テーブル変換操作の実装方法

推薦する

MySQL 8.0.12 のインストールと設定方法のグラフィックチュートリアル (Windows 版)

1. はじめにプロジェクトではMySQLを使用しています。インターネット上の例を参考にインストール...

固定サイドバーを実現するためのJavaScript

固定サイドバーを実装するにはJavaScriptを使用します。参考までに、具体的な内容は次のとおりで...

Docker-compose を使用して ELK をデプロイするためのサンプル コード

環境ホストIP 192.168.0.9 Docker バージョン 19.03.2 docker-co...

CSS で中空マスク レイヤーを実装するサンプル コード

この記事の内容: ページ中空マスクレイヤー、ページ中空マスクガイドレイヤー、画像中空マスク通常のマス...

Web スライスとは何ですか?

IE8 の新機能 Web スライス (Web スライス) Microsoft は 3 月 20 日...

MySQL 8.0 アップグレード体験

目次序文1. まず、既存のバージョンの MySQL を完全にアンインストールします。 2. deb ...

MySQL における := と = の違いをグラフィカルに紹介

:= と = の違い=設定および更新の場合にのみ、:= と同じ効果、つまり代入効果があり、それ以外の...

ネイティブ JavaScript メッセージボード

この記事では、参考までにメッセージボードを実装するためのJavaScriptの具体的なコードを紹介し...

TCPパフォーマンスチューニングの実装原理とプロセス分析

3ウェイハンドシェイクフェーズクライアントSYNパケットの再試行回数sysctl -w net.ip...

Docker+K8S+GitLab/SVN+Jenkins+Harbor をベースにした継続的インテグレーション配信環境の構築に関する詳細なチュートリアル

目次環境設定の概要1.K8Sとは何ですか? 2. K8S を使用する理由3. K8S を使用する利点...

Windows プラットフォームでの MySQL のインストールと設定方法と注意事項

2.1、msiインストールパッケージ2.1.1、インストール特に重要なのは、インストール前に、元の ...

Windows 10 + mysql 8.0.11 zipインストールチュートリアルの詳細

準備する: MySQL 8.0 Windows zip パッケージのダウンロード アドレス: htt...

フロントエンド HTML+CSS+JS を使用してシンプルな TODOLIST 関数を開発する (メモ帳)

目次1. 簡単な紹介2. スクリーンショットを実行する3. コードの紹介4. まとめ1. 簡単な紹介...

Dockerコンテナを停止および削除できない問題の解決策

実行中のコンテナIDを見つける ドッカーps上記のコンテナの物理的な場所を見つける /var/lib...

IE6 フォントを定義できません: 13px サイズは無効です。IE6 は自動的に大きいフォント ソリューションを表示します。

数日前、Web ページのモジュールを調整していたとき、ページのフォント サイズを 13px に設定し...