序章

Nginxは、Apache2に代わる人気のあるHTTPサーバーです。 リバースプロキシ、メールサーバー、またはWebサーバーとして使用できます。 2015年7月現在のNetcraft調査によると、Nginxは現在14 % oの市場を保有しており、2007年以降増加傾向にあります。

このガイドでは、Debian8サーバーにNginxをインストールします。

前提条件

このチュートリアルに従うには、次のものが必要です。

  • 1つの新しいDebian8.1ドロップレット
  • このチュートリアルのステップ2と3に従ってセットアップできるsudo非rootユーザー。

特に明記されていない限り、このチュートリアルのすべてのコマンドは、sudo権限を持つroot以外のユーザーとして実行する必要があります。

ステップ1—Nginxをインストールします

このステップでは、apt-getと呼ばれる組み込みのパッケージインストーラーを使用します。 管理が大幅に簡素化され、クリーンなインストールが容易になります。

前提条件の一部として、aptパッケージインデックスをapt-getで更新し、sudoパッケージをインストールする必要があります。 他のLinuxディストリビューションとは異なり、Debian8にはsudoがインストールされていません。

Nginxは前述のHTTPサーバーであり、メモリ使用量が少なく、大きな負荷を処理することに重点を置いています。 これをインストールするには、次のコマンドを実行します。

  1. sudo apt-get install nginx

最も人気のある2つのオープンソースWebサーバーであるNginxとApache2の違いについては、この記事を参照してください。

ステップ2—Webサーバーをテストする

このステップでは、Nginxサーバーにアクセスできることをテストします。

Webブラウザーで、http://your_server_ipにアクセスし、your_server_ipをサーバーのIPアドレスに置き換えます。 サーバーが稼働していることを確認するデフォルトのNginxページが表示されます。

Nginx Default Page on Debian 8

Webブラウザーにアクセスできない場合でも、コマンドラインからサーバーをテストできます。 別のシステムからテストして、Webサイトが外の世界に表示されることを確認することをお勧めします。 次のコマンドを発行します。

  1. curl your_server_ip

次のHTML出力が表示されます。

出力
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx on Debian!</title>
<style>
    body {
        width: 35em;
        margin: 0 auto;
        font-family: Tahoma, Verdana, Arial, sans-serif;
    }
</style>
</head>
<body>
<h1>Welcome to nginx on Debian!</h1>
<p>If you see this page, the nginx web server is successfully installed and
working on Debian. Further configuration is required.</p>

<p>For online documentation and support please refer to
<a href="http://nginx.org/">nginx.org</a></p>

<p>
      Please use the <tt>reportbug</tt> tool to report bugs in the
      nginx package with Debian. However, check <a
      href="http://bugs.debian.org/cgi-bin/pkgreport.cgi?ordering=normal;archive=0;src=nginx;repeatmerged=0">existing
      bug reports</a> before reporting a new bug.
</p>

<p><em>Thank you for using debian and nginx.</em></p>


</body>
</html>

エラーは次のようになります。 これはではなく表示されるべきです。

出力
curl: (52) Empty reply from server

ステップ3—Nginxプロセスを管理する

Webサーバーが稼働しているので、いくつかの基本的な管理コマンドを確認できます。

Webサーバーを停止するには、次のように入力します。

  1. sudo systemctl stop nginx

停止時にWebサーバーを起動するには、次のように入力します。

  1. sudo systemctl start nginx

サービスを停止してから再開するには、次のように入力します。

  1. sudo systemctl restart nginx

単に構成を変更するだけの場合、Nginxは接続を切断せずにリロードできることがよくあります。 これを行うには、次のコマンドを使用できます。

  1. sudo systemctl reload nginx

次のように入力すると、サーバーが再起動したときにWebサーバーが自動的に再起動することを確認できます。

  1. sudo systemctl enable nginx

この構成が機能することをテストするには、サーバーを再起動します。

  1. sudo shutdown -r now

次に、サーバーが再起動しているので、ログアウトします。

1〜2分後、手順2を繰り返して、Webサーバーが再起動時に起動することをテストできます。

サーバールートと構成

Nginxを介して独自のページまたはアプリケーションの提供を開始する場合は、Nginx構成ファイルとデフォルトのサーバールートディレクトリの場所を知る必要があります。

デフォルトのサーバールート

デフォルトのサーバールートディレクトリは/var/www/htmlです。 このディレクトリに配置されたファイルは、Webサーバーで提供されます。 この場所は、/etc/nginx/sites-enabled/defaultにあるNginxに同梱されているデフォルトのサーバーブロック構成ファイルで指定されています。

サーバーブロックの構成

/etc/nginx/sites-availableで新しい構成ファイルを作成することにより、Apacheの仮想ホストと呼ばれる追加のサーバーブロックを追加できます。 これらの構成をアクティブにするには、以下を使用して/etc/nginx/sites-enabledへのシンボリックリンクを作成します。

  1. sudo ln -s /etc/nginx/sites-available/site /etc/nginx/sites-enabled/site

sites-enabledディレクトリ内のすべての構成ファイルはNginxによってロードされます。

Nginxグローバル構成

メインのNginx構成ファイルは/etc/nginx/nginx.confにあります。 ここで、Nginxデーモンプロセスを実行するユーザーや、Nginxの実行中に生成されるワーカープロセスの数などの設定を変更できます。

結論

Webサーバーがインストールされたので、提供するコンテンツのタイプと、より豊かなエクスペリエンスを作成するために使用するテクノロジーについて、多くのオプションがあります。

サーバーを保護するための追加オプションを検討することもできます。 現在、ワールドワイドウェブに公開されており、非常に脆弱であることを忘れないでください。