Nginxの「enginex」と発音されるのは、インターネット上で最大のサイトのいくつかの負荷を処理する、オープンソースの高性能HTTPおよびリバースプロキシサーバーです。スタンドアロンのウェブサーバー、ロードバランサー、コンテンツキャッシュ、HTTPサーバーと非HTTPサーバーのリバースプロキシとして使用できます。
Apacheと比較して、Nginxは非常に多くの同時接続を処理でき、接続あたりのメモリフットプリントが小さくなります。
このチュートリアルでは、Ubuntu20.04にNginxをインストールして管理する方法について説明します。
前提条件#
続行する前に、sudo権限を持つユーザーとしてログインしていること、およびポート80または443でApacheまたはその他のプロセスが実行されていないことを確認してください。
Nginxのインストール#
NginxはデフォルトのUbuntuリポジトリで利用できます。インストールするには、次のコマンドを実行します。
sudo apt updatesudo apt install nginx
インストールが完了すると、Nginxサービスが自動的に開始されます。次のコマンドを実行して確認できます:
sudo systemctl status nginx 出力は次のようになります:
● nginx.service - A high performance web server and a reverse proxy server
     Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2020-05-02 20:25:43 UTC; 13s ago
...
 それでおしまい。 NginxがUbuntuマシンにインストールされています。 Nginxサービスは、他のsystemdユニットと同じ方法で管理できます。
 Nginxをサーバーにインストールして実行したので、ファイアウォールがHTTP(80)でのトラフィックを許可するように構成されていることを確認する必要があります。 )およびHTTPS(443 )ポート。 UFWを使用していると仮定します 、両方のポートのルールを含む「NginxFull」プロファイルを有効にすることでこれを行うことができます:
sudo ufw allow 'Nginx Full' ステータスタイプを確認するには:
sudo ufw status 出力は次のようになります。
Status: active
To                         Action      From
--                         ------      ----
22/tcp                     ALLOW       Anywhere
Nginx Full                 ALLOW       Anywhere
22/tcp (v6)                ALLOW       Anywhere (v6)
Nginx Full (v6)            ALLOW       Anywhere (v6)
 
 新しいNginxのインストールをテストするには、http://YOUR_IPを開きます。 選択したブラウザで、下の画像に示すように、デフォルトのNginxランディングページが表示されます。
 Nginx構成ファイルの構造とベストプラクティス#
- すべてのNginx構成ファイルは
/etc/nginxにあります ディレクトリ。 - メインのNginx構成ファイルは
/etc/nginx/nginx.confです。 。 - Nginx構成の保守を容易にするために、ドメインごとに個別の構成ファイルを作成することをお勧めします。サーバーブロックファイルは必要な数だけ持つことができます。
 - Nginxサーバーブロックファイルは
/etc/nginx/sites-availableに保存されます ディレクトリ。このディレクトリにある構成ファイルは、/etc/nginx/sites-enabledにリンクされていない限り、Nginxによって使用されません。 ディレクトリ。 - サーバーブロックをアクティブ化するには、
sites-availableの構成ファイルサイトからシンボリックリンク(ポインター)を作成する必要があります。sites-enabledへのディレクトリ ディレクトリ。 - 標準の命名規則に従うことをお勧めします。たとえば、ドメイン名が
mydomain.comの場合 次に、構成ファイルの名前を/etc/nginx/sites-available/mydomain.com.confにする必要があります。 -  
/etc/nginx/snippetsディレクトリには、サーバーブロックファイルに含めることができる構成スニペットが含まれています。繰り返し可能な構成セグメントを使用する場合は、それらのセグメントをスニペットにリファクタリングし、スニペットファイルをサーバーブロックに含めることができます。 -  Nginxログファイル(
access.logおよびerror.log)は/var/log/nginxにあります ディレクトリ。別のaccessを使用することをお勧めします およびerror各サーバーブロックのログファイル。 - ドメインドキュメントのルートディレクトリは、任意の場所に設定できます。 webrootの最も一般的な場所は次のとおりです。
-  
/home/<user_name>/<site_name> -  
/var/www/<site_name> -  
/var/www/html/<site_name> -  
/opt/<site_name> 
 -