GNU/Linux >> Linux の 問題 >  >> Linux

CentOSNGINX仮想ホストを作成する

この記事では、複数のWebドメインにサービスを提供するNGINX®仮想ホストを作成する方法を説明します。

各ドメインのレイアウトを作成します

この例では、domain1.comという2つのドメインを作成します およびdomain2.com

デフォルトの権限では有効になっているだけなので、demo ユーザーがホームフォルダを参照するには、次のコマンドを実行して、このフォルダへのNGINXアクセスも許可する必要があります。

chmod 755 /home/demo

これで、各ドメインの基本的なレイアウトを作成できます。 home ディレクトリ、public_htmlを作成します 次のコマンドを実行してフォルダを作成します:

mkdir /home/demo/public_html

次の例に示すように、ホストするドメインごとに、サブフォルダーの標準セットを含むフォルダーを作成します。

mkdir -p /home/demo/public_html/domain1.com/{public,private,,backup}

mkdir -p /home/demo/public_html/domain2.com/{public,private,log,backup}

これらのコマンドは、フォルダpublicを作成します 、privatelog 、およびbackup ドメインのforeach.log

domain1.comでWebサイトの公開コンテンツを追加

この例では、パブリックフォルダに非常に単純なHTMLファイルを作成して、仮想ホストが機能していることをすばやく確認できるようにします。

次のコマンドを実行して、domain1.comのコンテンツを追加します :

nano /home/demo/public_html/domain1.com/public/index.html

次の例のようなコードをファイルに入力します。

<html>
  <head>
    <title>domain1.com</title>
  </head>

  <body>
    <h1>domain1.com</h1>
  </body>
</html>

このプロセスを繰り返して、domain2.comの同様のHTMLインデックスファイルを作成します。 。

index.htmlのコンテンツを必ず変更してください domain2.comを表示するファイル domain1.comではありません 。

仮想ホストのレイアウト

この記事では、CentOS®スタイルのレイアウト(conf.dを使用)を使用しています 仮想ホストを作成するときに、構成ファイルを格納するディレクトリ)。パッケージマネージャーを使用して、またはソースからNGINXをインストールした場合にも、このレイアウトが使用される可能性があります。

仮想ホストを仮想ファイルに追加します

仮想ファイルを編集して、domain1.comを追加します 次のコマンドを実行します:

sudo nano /etc/nginx/conf.d/virtual.conf

:インストールに応じてパスを調整してください。

ソースからインストールする場合は、次のパスを入力する必要があります。

sudo nano /usr/local/nginx/conf/conf.d/virtual.conf

次のコードをファイルに追加します:

server {

            listen   80;
            server_name  www.domain1.com;
            rewrite ^/(.*) https://domain1.com/$1 permanent;

           }


server {

            listen   80;
            server_name domain1.com;

            access_log /home/demo/public_html/domain1.com/log/access.log;
            error_log /home/demo/public_html/domain1.com/log/error.log;

            location / {

                        root   /home/demo/public_html/domain1.com/public/;
                        index  index.html;

                        }

            }

ファイルの最初のサーバーモジュールは、訪問者をdomain1.comにリダイレクトする単純な書き換えルールです。 www.domain1.comから 。

2番目のサーバーモジュールには、server_nameなどの非常に基本的な情報があります。 、これは提供するドメイン名です。

次に、コードはログの場所を簡単に見つけられるように定義します。最後に、サーバーのルートとインデックスファイルを設定します。

NGINXをリロード

サイトを有効にするには、次のコマンドを実行してNGINXをリロードします。

sudo /etc/init.d/nginx reload
ウェブサイトを表示

次のURLをウェブブラウザのナビゲーションバーに貼り付けて、ドメインに移動します。

https://www.domain1.com

index.htmlの情報を表示する簡単なテストWebページが表示されます。 ファイル。

ログを確認する

前の手順で、 virtual.confにコードを追加しました ログの場所を構成したファイル。次のコマンドを実行して、その場所にログがあることを確認します。

ls /home/demo/public_html/domain1.com/log/
...
access.log  error.log
追加のドメインについて繰り返します

次の仮想ホストであるdomain2.comに対して同じプロセスを繰り返します。 。


Linux
  1. nginx-413リクエストエンティティが大きすぎます

  2. Nginx仮想ホスト(サーバーブロック)を作成する方法

  3. / etc / hostsを補完するユーザー固有のHostsファイルを作成しますか?

  1. Nginxでリダイレクトを作成する

  2. CentOS6にNginxをインストールします

  3. UbuntuオペレーティングシステムでApache仮想ホストを設定する

  1. CentOSでApache仮想ホストを設定する方法

  2. CentOS7でApache仮想ホストを構成する

  3. CentOSで仮想ホストを設定する