nginxでサブドメインの設定をする

どうもbzyです。
今回はnginxでサブドメインを使用する場合の設定をします。

慣れればどうってことありませんが初めは仕組みがわからないので大変だったことを思い出します。

現在使用しているドメインに
test.sqlinjection.workというサブドメインを取得してみることにします。

サブドメインを設定するためには2つやることがあります。

①サブドメインを取得する
②nginxでサブドメインの設定

①はお名前ドットコムやサクラサーバ等で取得したドメインのDNS設定にて
設定することが可能です。

先にこちらを済ませておかないとサブドメインにアクセスできないのでまずはこちらを設定しましょう。

①サブドメインを取得する

僕の場合はお名前.comでドメインを取得しているのでそちらで設定していきます。

ログインしたら
DNS > ドメインのDNS関連機能設定にチェックを入れ[次へ]


ドメイン設定画面でドメインを指定して[次へ進む]

DNSレコード設定を利用する[設定する]


以下設定してサブドメインを取得します。

ホスト名:設定したいサブドメイン
TYPE:A
VALUE:ドメインのipアドレス

お名前.comの場合は24時間以内には設定を完了してくれるのでしばらく待ちます。(その間にnginxの設定をしましょう)

自サーバでDNSを設定している場合はDNSのレコードにサブドメインの設定をしてください。

pingが通るようになれば設定完了しています。

ping test.sqlinjection.work
64 bytes from 123.456.789.123: icmp_seq=0 ttl=55 time=33.130 ms
64 bytes from 123.456.789.123: icmp_seq=1 ttl=55 time=40.719 ms

②nginxでサブドメインの設定

まずはnginxをインストールしましょう。

sudo yum install -y nginx
nginx -v  #バージョン確認
nginx version: nginx/1.12.2

インストールが完了しましたね。
/etc/nginxというフォルダが作成されます。
今回は/etc/nginx/配下のconf.d/というフォルダ内にファイルを作成していきます。
もともとdefault.confファイルがあるのでそちらを編集しても結構です。

今回は新しく簡単な設定ファイル(test.conf)を作成してみましょう。

vi /etc/nginx/conf.d/test.conf

server {
    listen       80;
    server_name  test.sqlinjection.work; #サブドメインの名前
    }

    location / {
        root   /var/www/test;  #ディレクトリ名
        index  index.php index.html;
    }

はい。

server_name にサブドメイン名
root に使用するディレクトリを指定します。(ディレクトリは初めに作成しておきましょう)

あとはnginxを起動してあげれば良いです。

sudo systemctl start nginx

まとめ

もし何かエラーが出てしまった場合はconfの書き方がおかしかったりするので
見直してみましょう。

以上サブドメインの設定方法でした。
次回はletsencryptによる無料ssl証明書の取得について記載しようと思います。
それではまた。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です