Ubuntu Linuxでの仮想ホストの構成-Nginxの組み合わせ

1851 ワード

仮想ホストは、その名前のように、1台のサーバを複数の仮想ホストに分割し、ドメイン名ごとに異なる仮想ホストに割り当てることができ、ドメイン名リソースとハードウェアリソースを十分に利用することができます.今回はNginxを用いて仮想ホストの構成を実現します.
Nginxはfree、オープンソースの高性能HTTPサーバーとリバースプロキシサーバーであり、同時にIMAP、POP 3、SMTPサーバーとして使用することができ、HTTPサーバーとしてWebアプリケーションの配置としてよく使用され、また、Nginxはリバースプロキシサーバーとして負のロードバランスを実現することもよくある.
Nginxを使用して仮想ホストを構成するには、Nginxインストールディレクトリのconf/nginx.confを編集するだけでよい.仮想ホストを追加するには、プロファイルにserverノードを追加するだけでよい.

server {

    listen 80;

    server_name test1.example.com;

    location / {

        index index.html;

        root /home/www/test1/;

    }

}

server {

    listen 80;

    server_name test2.example.com;

    location / {

        index index.html;

        root /home/www/test2/;

    }

}

listenは傍受ポートであり、この例では80ポートを傍受するserver_name指定された仮想ホスト名location Nginxエージェントの相対URL範囲のみindexホームページのファイル名rootは、Webサイトのルートディレクトリのシステム内の実際の場所です.location /はこのホスト名に一致するすべての要求を表し、server_nameの値は*.example.comとすることができる.すなわち、example.comで終わるすべてのホスト名、またはtest.*、すなわちtestで始まるすべてのホスト名を一致させることができる.~^test\d+\.example\.com$のように、正規表現を使用する場合、一番前に~という記号をつけます.
以上の2つの仮想ホストは、異なるホスト名に対する要求を異なる物理ディレクトリに指向することを実装しています.次に、異なるホスト名の要求を異なるポートに配布するために、仮想ホストでポートを区別する方法について説明します.
上記の構成の書き方と似ています.

server {

    listen 80;

    server_name demo1.example.com;

    location / {

        proxy_pass http://127.0.0.1:8080;

    }

}

server {

    listen 80;

    server_name demo2.example.com;

    location / {

        proxy_pass http://127.0.0.1:8081;

    }

}


proxy_passは、要求をURLに転送することで、仮想ホスト名とポートのマッピングを実現できることを示します.1台の物理マシンで複数のTocmatサービスインスタンスを導入する場合、この方法を採用することで、複数のポートが露出する問題を回避できます.
個人のブログは同期して更新して、更に多くの技術の分かち合いを獲得して注目してください:鄭保楽のブログ