Konfigurasi Virtual Host nginx pada CentOS 7

Virtual Hosting adalah salah satu metode pada web server yang memungkinkan dalam satu server terdapat konten web site yang berbeda beda, cara membedakannya dengan alamat domain atau sub domain yang diakses, sehingga bisa dikatakan dalam satu server memiliki lebih dari satu domain atau sub domain.

Kegunaan dari Virtual Hosting ini kita dapat meletakan sejumlah aplikasi web based dalam satu server yang sama, misalnya untuk www berisi halaman default dari web server dan untuk webmail berisi halaman webmail untuk mengakses mail server.

Topologi

Kali ini saya akan membahas konfigurasi virtual hosting pada nginx berdasarkan topologi dibawah ini :
Pada topologi diatas, web server memiliki 3 subdomain yang berbeda, nantinya masing-masing subdomain memiliki isi yang berbeda beda menggunakan virtual host.

Web Server

  1. Pastikan server dan nginx sudah dapat berjalan dan dikonfigurasi sebelumnya.
  2. Jika belum dapat dilihat pada postingan saya yang ini, Jika sudah kita buat file konfigurasi vhost pada direktori /etc/nginx/conf.d/.
  3. [root@m1-dz ~]# vi /etc/nginx/conf.d/vhost.conf
    server {
            listen 80;
            server_name admin.network.dz; #subdomain yang diinginkan
    
            location / {
                    root /usr/share/nginx/admin; #lokasi file html
                    index index.html;
            }
    }
    
    server {
            listen 80;
            server_name webmail.network.dz;
    
            location / {
                    root /usr/share/nginx/webmail;
                    index index.html;
            }
    }
    
    
  4. Lakukan pengecekan sintaks, pastikan tidak ada yang error.
  5. [root@m1-dz ~]# nginx -t
    nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
    nginx: configuration file /etc/nginx/nginx.conf test is successful
    
  6. Buat file html pada masing-masing root direcotry situs web.
  7. [root@m1-dz ~]# mkdir /usr/share/nginx/admin /usr/share/nginx/webmail
    [root@m1-dz ~]# vi /usr/share/nginx/admin/index.html
    <h1>Admin website</h1>
    <h2>admin.network.dz</h2>
    
    [root@m1-dz ~]# vi /usr/share/nginx/webmail/index.html
    <h1>Webmail website</h1>
    <h2>webmail.network.dz</h2>
    
  8. Restart aplikasi nginx untuk memperbarui konfigurasi.
  9. [root@m1-dz ~]# systemctl restart nginx
    
  10. Testing akses  domain-domain tersebut lewat client.
Jika tidak ada masalah sampai disini, maka konfigurasi yang dilakukan telah selesai.

Sekian terima kasih.

Referensi


  • Server World
  • Komentar