1 VPS untuk Banyak Domain? (Pada Nginx)

Apa bisa menggunakan 1 buah server untuk lebih dari 1 domain (domain1.com, domain2.com) dan dengan website yg berbeda-beda? Jawabnya adalah bisa dong. Jika kalian menggunakan Nginx (Enjin X atau Nginnggg 😂 wkwkwk), kalian tinggal perhatikan pada /etc/nginx/sites-enabled dan /etc/nginx/sites-available.

Langkah pertama adalah siapkan backup pada file default di /etc/nginx/sites-enabled dengan command berikut agar anda tidak menyesal apabila terjadi apa apa wkwk.

cp /etc/nginx/sites-enabled/default /etc/nginx/sites-enabled/default.backup

Lalu hapus default td 😱 :

sudo rm /etc/nginx/sites-enabled/default

tenang, kalau terjadi apa-apa ada backup. tinggal rename saja default.backup menjadi default saja

Ohiya PERHATIAN PERHATIAN jangan lupa atur DNS antar domain agar diarahkan pada ip server yg sama (A Record nya).

Jika sudah, tentukan mana root website pertama dan website kedua nya. Misalnya website pertama ada di /home/fedora/website1 dan website kedua ada di /home/fedora/website2.

Buat file yg berisi server block yaitu website1 dan website2 di /etc/nginx/sites-enabled untuk file website1 :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
server {
listen 80;
listen [::]:80;


root /home/fedora/website1;
index index.html index.htm;


server_name domain1.com;
location / {
root /home/fedora/website1;
try_files $uri $uri/ /index.html;
}


}

untuk file website2 :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
server {
listen 80;
listen [::]:80;


root /home/fedora/website2;
index index.html index.htm;


server_name domain2.com;
location / {
root /home/fedora/website2;
try_files $uri $uri/ /index.html;
}


}

sesuaikan root nya dan server_name. Pastikan propagasi domain dan server selesai. Coba check dengan “dig domain1.com” apakah A Record ip server sudah sesuai apa belum.

Kalau sudah, gunakan symlink antara file di sites-enabled dan sites-available. Agar apabila ada perubahan di sites-enabled, di sites-available juga berubah.

sudo ln -s /etc/nginx/sites-enabled/website1 /etc/nginx/sites-available/website1
sudo ln -s /etc/nginx/sites-enabled/website2 /etc/nginx/sites-available/website2

Check konfigurasi nginx apakah sudah tidak ada problem :

sudo nginx -t

# apa bila keluarannya begini :
# nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
# nginx: configuration file /etc/nginx/nginx.conf test is successful
# maka jos gandos 😉

Restart si nginx dengan sudo systemctl restart nginx 😉. Semoga berhasil