December 14, 2018

Membuat Subdomain Dengan Nginx

Subdomain?

Subdomain adalah bagian dari nama domain induk yang memiliki ruangan sendiri (direktori), mengacu ke suatu alamat fisik. Contohnya subdomain blog.sibunglon.com acuannya yaitu sibunglon.com. Jika menggunakan nginx, untuk membuat subdomain sama seperti pada lab sebelumnya yang Bermain Dengan Nginx. Mudahkan kalau caranya cuman gitu? :D Tapi jika masih ada yang bingung, tenang labnya masih saya bagikan.

Pada lab ini saya asumsikan:

  • Domain induk = sibunglon.com
  • Subdomain = blog.sibunglon.com
  • master konfigurasi berada di direktori /sibunglonlabs/config/nginx
  • File konfigurasi domain induk sibunglonlabs.conf
  • Direktori root domain induk berada di /sibunglonlabs/web
  • Direktori root subdomain berada di /sibunglonlabs/blog

Bermain Subdomain Dengan Nginx

1) Pastikan pada konfigurasi domain induk tidak memuat listen 80, karena port tersebut akan dipake ramai-ramai oleh domain dan subdomain. Berikut konfigurasi domain di lab local saya:

server {
   server_name sibunglon.com;

   access_log  /var/log/nginx/access.log;
   error_log   /var/log/nginx/error.log  warn;

   location / {
       root   /sibunglonlabs/web;
        index  index.html index.htm;
    add_header Cache-Control no-cache;
   }

   error_page   500 502 503 504  /50x.html;
   location = /50x.html {
       root   /sibunglonlabs/web;
   }

}

2) Untuk mempercepatnya atau memudahkan pembuatan subdomain, copy saja konfigurasi domain induk dengan command

$ cd /sibunglonlabs/config/
$ cp sibunglonlabs.conf blog.conf

3) Edit file konfigurasi subdomain dengan command nano blog.conf lalu ganti server_name dan direktori rootnya.

server {
   server_name blog.sibunglon.com;

   access_log  /var/log/nginx/access.log;
   error_log   /var/log/nginx/error.log  warn;

   location / {
       root   /sibunglonlabs/blog;
        index  index.html index.htm;
    add_header Cache-Control no-cache;
   }

   error_page   500 502 503 504  /50x.html;
   location = /50x.html {
       root   /sibunglonlabs/blog;
   }

}

4) Buat simbolik link file blog.conf ke direktori /etc/nginx/conf.d/

ln -sf /sibunglonlabs/conf/nginx/blog.conf /etc/nginx/conf.d/

5) Restart nginx, untuk menerapkan perubahan yang telah dilakukan.

6) Sekarang subdomain anda aktif, untuk menghindari error akses pastikan direktori root subdomain sudah berisi file index.html atau sejenisnya.