[nginx入門1]nginxでhtmlを公開するまでの手順と前提知識

実行環境

今回私が使用する実行環境は以下の通りです

os : ubuntu 20.04

nginxで公開するまでの流れ

nginxで公開するまでの流れは以下の通りです。

  1. aptの更新
  2. nginxをダウンロード
  3. nginxの設定ファイルを弄る
  4. nginxを起動
  5. サイトにアクセスできるか確認
  6. ポート開放

次はそれぞれの項目について解説していきます。

aptの更新

まずはubuntuのaptを更新しましょう。

nginxに限った話ではないですが、特に理由がない限り、aptのバージョンは最新にしておきましょう。

aptを最新にするコマンドは以下の通りです。

sudo apt update
sudo apt upgrade

nginxをダウンロード

nginxのダウンロードは以下のコマンドを実行するだけです。

sudo apt install nginx

nginxの設定ファイルを弄る

nginxをダウンロードしたら、「/etc/nginx」のフォルダが自動生成されます。

設定ファイルは「/etc/nginx」内にあります。

設定ファイルは用途に応じてファイル分割されています。

ただ公開するだけなら設定ファイルを弄らなくて大丈夫ですが、今回はドメイン使用したいので少し弄ります。

ドメインを使用するには、「/etc/nginx/sites-available/default」を弄ります。

まずはvimやnanoなどの適当なエディタでファイルを開いてみましょう。

色々ごちゃごちゃと書いてありますが、ドメインを使用するには「#server_name _;」と書かれた行の「#server_name ドメイン名;」という形に置き換えるだけです。

設定ファイルの書き方が正しいか不安な方は、以下のコマンドで構文チェックできるので試してみましょう。

nginx -t

nginxは設定を変更したら、反映するためにnginx自体を起動させるか再起動させるのが基本です。

今回はnginxをまだ起動してないので起動しましょう。

nginxを起動するコマンドは次の項目でお話します。

ちなみに、再起動するコマンドは以下の通りです。

sudo nginx -s reload

nginxの起動

nginxの起動コマンドは何通りかありますが、今回私が使用したコマンドは以下です。

sudo service nginx start

このコマンド実行すればnginxが起動すると思います。

サイトにアクセスできるか確認

nginxが動いているか確認するには、以下のコマンドを実行してみましょう。

curl http://localhost

curlは指定されたURLのhtml表示する便利コマンドです。

形式は「curl URL」です。

もしcurlがデフォルトでインストールされていない場合は、以下のコマンドでインストールしましょう。

sudo apt install curl

そしてcurlで「http://localhost/」をURLとして指定しましたが、この書き方が見慣れない方が多いと思うので、説明します。。

まずURLは「プロトコル://ホスト名/ファイル名またはパス」という形式で成り立っています。

よく見るhttpsというのはデフォルト設定で使えないので、httpというプロトコルを指定しています。

ホスト名というのは、IPアドレスのことです。

また、ホスト名にドメインを使うこともできます。

なぜならドメインとIPアドレスは紐づいているので、ドメインからIPアドレスを特定できるからです。

そしてホスト名に「localhost」が使えるのは、ドメインが使えるのと同じ理由です。

ちなみに「localhost」とは自身のIPアドレスのことです。

つまりIPアドレスでいうと「127.0.0.1」です。

IPアドレスにはいくつか特殊なものがあり、「127.0.0.1」というのもその一つです。

このIPアドレスは他サイトでもこのIPを見かけると思いますが、見かけたら「このIPは自身を表すもの」と思いましょう。

公開

レンタルサーバーの種類やデフォルト設定によっては何もしなくても、設定ファイルで指定したドメイン名でアクセスできると思います。

しかしそうじゃない場合もあります。

その場合、ポート開放という作業をすれば大体の場合は解決できると思います。

それでもだめならレンタルサーバーのアカウント設定を弄るとインターネットからアクセスできたりします。

ポート開放のやり方

ubuntuでは、ufwコマンドでポートに関する操作ができます。

もしプリインストールされてなかったら以下のコマンドでインストールできます。

sudo apt install ufw

よく使うコマンドは以下の通りです。

ポート開放するにはまず以下のコマンドでポート開放を有効化してあげる必要があります。

sudo ufw enable

そしたら以下のコマンドを実行しましょう。

sudo ufw allow 80

これでポートがインターネットに解放され、インターネットからドメインでアクセスできると思います。

ポート80はhttpのポート番号です。

よく見かけるhttpsのポート番号は443ですが、こちらは少し手順を踏まなきゃ使えないので、別記事にて解説できればと思います。

さくらサーバーでポート開放する例

私もここで躓いたのですが、さくらサーバーだとufwでポート開放してもインターネットからアクセスできないと思います。

どうやらレンタルサーバーによっては、そのサーバー特有のやり方でポート開放しなくてはいけないみたいです。

以下はさくらサーバーの場合の手順です。

  1. さくらサーバー管理画面を開く
  2. ログインする
  3. ポート開放したいサーバーをクリック
  4. 「パケットフィルター設定」の項目をクリック
  5. 「パケットフィルターを設定」というボタンをクリック
  6. 「パケットフィルター設定を追加する」というボタンをクリック
  7. 追加されたフィルター設定の「フィルターの種類」で「Web」を選ぶ

これでポート開放されたと思います。

まとめ

いかがだったでしょうか?。

皆さんのコンテンツを世の中に公開出来たら嬉しいです。

ではまた!

次の記事

[サーバーノウハウ2]レッツエンクリプトで無料でhttps化する手順(nginx)