Cara membuat web server dengan Nginx pada CentOS 7

Web Server adalah sebuah server pada jaringan komputer yang dapat melayani permintaan data berupa konten web site yang tersimpan dalam web server tersebut. Secara default web server menggunakan protokol HTTP (Hypertext Transfer Protocol) untuk berkomunikasi dengan web client, dan protokol transport TCP pada port 80.

Untuk membuat sebuah web server kita harus menginstall aplikasi yang dapat menerima dan merespon protokol HTTP yang masuk kedalam server. Kali ini aplikasi yang akan saya bahas adalah Nginx, aplikasi ini bersifat open source dan didapatkan secara gratis.

Topologi


Web Server

  1. Lakukan konfigurasi IP Address sesuai dengan jaringan dimana server berada atau seperti pada topologi. Cara konfigurasi IP Address lihat disini.
  2. Masuk dalam shell server lewat ssh atau monitor, Kemudian kita install paket aplikasi nginx menggunakan yum.
  3. #Nginx berada di repo EPEL, jadi install repo EPEL terlebih dahulu
    [root@m1-dz ~]# yum -y install epel-release
    
    #setelah terinstall, baru kita dapat menginstall NGINX
    [root@m1-dz ~]# yum --enablerepo=epel -y install nginx
    
  4. Edit file konfigurasi nginx yang ada pada /etc/nginx/nginx.conf
  5. [root@m1-dz ~]# vi /etc/nginx/nginx.conf
    server {
            listen       80 default_server;
            listen       [::]:80 default_server;
            server_name  www.network.dz; #Ganti menjadi domain milik server.
            root         /usr/share/nginx/html; #lokasi file html
    
  6. Buat file index.html yang menjadi isi dari web server ini.
  7. [root@m1-dz ~]# cd /usr/share/nginx/html/
    [root@m1-dz html]# rm -f index.html #hapus file default
    [root@m1-dz html]# vi index.html #buat file baru
    <h1>
    Nginx test</h1>
    <h2>
    www.network.dz</h2>
    
  8. Test sintaks file konfigurasi, pastikan tidak ada yang error.
  9. [root@m1-dz html]# nginx -t
    nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
    nginx: configuration file /etc/nginx/nginx.conf test is successful
    
  10. Buka firewall, kemudian jalankan service nginx.
  11. [root@m1-dz html]# firewall-cmd --add-service=http --permanent
    success
    [root@m1-dz html]# firewall-cmd --reload
    success
    [root@m1-dz html]# systemctl start nginx
    [root@m1-dz html]# systemctl enable nginx
    Created symlink from /etc/systemd/system/multi-user.target.wants/nginx.service to /usr/lib/systemd/system/nginx.service.
    
  12. Testing lewat PC Client
  13. Untuk melihat error, dan orang yang mengakses dapat dilakukan dengan perintah dibawah ini.
  14. [root@m1-dz html]# tail -f /var/log/nginx/error.log 
    2018/06/24 10:02:00 [error] 1606#0: *1 open() "/usr/share/nginx/html/favicon.ico" failed (2: No such file or directory), client: 192.168.100.1, server: www.network.dz, request: "GET /favicon.ico HTTP/1.1", host: "www.network.dz", referrer: "http://www.network.dz/"
    
    [root@m1-dz html]# tail -f /var/log/nginx/access.log 
    192.168.100.1 - - [24/Jun/2018:10:02:00 +0700] "GET / HTTP/1.1" 200 44 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.79 Safari/537.36" "-"
    192.168.100.1 - - [24/Jun/2018:10:02:00 +0700] "GET /favicon.ico HTTP/1.1" 404 3650 "http://www.network.dz/" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.79 Safari/537.36" "-"
    192.168.100.1 - - [24/Jun/2018:10:02:07 +0700] "GET / HTTP/1.1" 304 0 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.79 Safari/537.36" "-"
    192.168.100.1 - - [24/Jun/2018:10:02:08 +0700] "GET / HTTP/1.1" 304 0 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.79 Safari/537.36" "-"
    192.168.100.1 - - [24/Jun/2018:10:02:08 +0700] "GET / HTTP/1.1" 304 0 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.79 Safari/537.36" "-"
    192.168.100.1 - - [24/Jun/2018:10:02:08 +0700] "GET / HTTP/1.1" 304 0 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.79 Safari/537.36" "-"
    
Jika sampai disini tidak ada masalah, maka konfigurasi sudah selesai dan web server sudah dapat digunkan.

Sekian terima kasih

Referensi

Komentar