nginxを使用してドメイン名ベースの仮想ホストを構成する

nginxを使用してドメイン名ベースの仮想ホストを構成する

1. 仮想ホストとは何ですか?

仮想ホストは、特殊なテクノロジーを使用して、実行中のサーバーを論理的に複数のホストに分割します。これを行う主な目的は、1 台の物理サーバー上で複数の Web サイト プログラムを実行できるようにして、サーバーの残りのスペースを活用できるようにすることです。サーバーの役割を十分に発揮します。仮想ホストは完全に独立しています。

このように、nginx を使用して Web サイト プラットフォームを構築する場合、複数の IP ベースまたはドメイン ベースの Web サイトを実行するのに 1 つの nginx ソフトウェアのみを使用する必要があります。

2. ドメイン名ベースの仮想ホスティング

このタイプのドメイン名ベースの仮想ホスティングが最も一般的に使用されています。 IP ベースのものは一般にイントラネットで使用されます。

(1) nginx.confでの設定

nginx.conf に上記と下記のフィールドを追加するだけです。

vhosts/*.conf をインクルードします。

上記のフィールドは http モジュールに追加できます。

次に、nginx の conf ディレクトリに vhosts ディレクトリを作成します。すでに存在する場合は作成しないでください。

(2)仮想ホスト設定ファイルを追加する

vhosts ディレクトリに明確な .conf 構成ファイルを追加します。任意の名前を付けることができますが、後でメンテナンスしやすいように、デプロイされたアプリケーションに関連する名前を付けることをお勧めします。

前述の構成を例に挙げます

サーバー{

    聞く 80;     

# リスニング ポートを設定します。ポート 80 を設定するだけです。仮想ホストをいくつ記述しても、ポート 80 が使用されます。server_name ebook.yunweigonghui.com;

    #これが最も重要なことです。必要なドメイン名を設定します。

    ルート /usr/local/ywgh/nginx/html/wp/;

       #プロジェクトパスを明確に記述します。これも非常に重要です。間違った設定をしないでください。

    access_log /usr/local/ywgh/nginx/logs/wp/access.log メイン;

    #アクセス ログは明確に書き込むことも書き込まないこともできます。実稼働環境では、ログを区別するために明確に構成する必要があります。

場所 ~ \.php$ {

        try_files $uri =404;

        127.0.0.1:9000; をデフォルトとして設定します。

        error_log /usr/local/ywgh/nginx/logs/wp/php-error.log;

        fastcgi.conf をインクルードします。

        fastcgi_index インデックス.php;

    }

       #上記はPHPに関する設定内容です。

}

上記の設定が完了したら、nginx を再起動するか、リロードすることができます。

(3)まとめ

同じ設定ファイルに多数の仮想ホストを書き込むことは可能ですが、これは後のメンテナンスに非常に不便です (特に他者がメンテナンスするプラットフォームに接続する場合、著者はこの点を深く理解しています)。できるだけ多くの構成ファイルを記述して、短くて読みやすいものにするようにしてください。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Nginx 仮想ホストを構成する 3 つの方法 (ドメイン名に基づく)

<<:  JSメモリ空間の詳細な説明

>>:  MySQL マスタースレーブ同期メカニズムと同期遅延問題追跡プロセス

推薦する

MySQL ビューの紹介と基本操作のチュートリアル

序文ビューは、データベース システム内で非常に便利なデータベース オブジェクトです。 MySQL 5...

MySQLでカーソルを宣言する方法

MySQL でカーソルを宣言する方法: 1. 変数とカーソルを宣言する 結果をvarchar(300...

mysql 8.0.15 winx64 解凍バージョン グラフィック インストール チュートリアル

システムをインストールした後、毎回いくつかのソフトウェアを再インストールする必要があります。ソフトウ...

MySQL ビューの原理と基本操作例

この記事では、例を使用して、MySQL ビューの原理と基本操作を説明します。ご参考までに、詳細は以下...

MySQL データベースの show processlist コマンドの使用の分析

実際のプロジェクト開発では、多数のクエリや挿入、特にマルチスレッド挿入など、データベースに大きな負荷...

CSS の一部のプロパティの前には「*」または「_」が付きます。

CSS の一部のプロパティの前には「*」または「_」が付きます。さまざまなブラウザを識別する例えば...

MySQLのインデックスシステムがB+ツリーを使用する理由の分析

目次1. インデックスとは何ですか? 2. インデックスはなぜ必要なのでしょうか? 3. インデック...

Win10 + Ubuntu20.04 LTS デュアルシステムブートインターフェースの美化

エフェクト表示組み込みのブートインターフェースがあまりにも醜いので、テーマをダウンロードして美しくし...

MySQL で group by を使用すると常にエラー 1055 が発生します (推奨)

MySQL で group by を使用すると常にエラー 1055 が発生するため、原因を確認する...

MySQLで日付を比較する方法の詳細な説明

データ型が datetime であるフィールド add_time を持つテーブル product が...

ハイパーリンクの幅と高さを直接設定できない問題の解決策

幅と高さを直接使用することはできません。 display:block; または display:in...

ウェブデザインのためのオンライン開発ツール10選の紹介

1. オンラインテキストジェネレーターBlindTextGenerator: デザイナーにとって、こ...

React+Antdはテーブルの追加、削除、変更の例を実装します

目次テーブル/index.jsテーブル/モデル/index.jsテーブル/モデル/モジュール/bas...

血の写輪眼と輪廻眼の特殊効果コードを実現するためのHTML+CSS

結果 (完全なコードは下部にあります): 実装は難しくありませんが、繰り返しコードが多くなります。実...

JDBC および MySQL 一時テーブルスペースの詳細な分析

背景一時テーブルスペースは、データベースのソート操作を管理し、一時テーブルや中間ソート結果などの一時...