Di tutorial kali ini, pembahasannya adalah instalasi nginx di centos 7.
Nginx adalah perangkat lunak web server yang berkinerja tinggi, nginx juga bisa di jadikan load balancer atau proxy. Nginx adalah program yang jauh lebih flksibel dan ringan dari pada Apache HTTP Server.
Saat proses instalasi pastikan menggunakan user root.
Sebelum memulai dengan tutorial, pastikan Anda masuk sebagai pengguna dengan hak istimewa sudo (user root), dan Anda tidak memiliki Apache atau layanan lain yang berjalan pada port 80 atau 443, agar tidak akan mengakibatkan bentrok port karena sudah di pakai.
Langkah-langkahnya sebagai berikut :
Langkah Satu — Tambahkan Repositori Nginx
Untuk menambahkan repositori CentOS 7 EPEL, buka terminal dan gunakan perintah berikut:
sudo yum install epel-release
ada cara lain jika tidak menggunakan repositori epel, kita bisa mengedit repositori yang ada di server
Langkah Dua — Instal Nginx
Instal Nginx menggunakan perintah yum berikut:
sudo yum install nginx
Langkah Tiga — Mulai Nginx
dikarena nginx ketika proses install tidak langsung running sendiri, maka kita harus melakukan start dengan membuka terminal dan gunakan perintah berikut :
sudo systemctl start nginx
Agar saat di restart nginx tetap berjalan, jalankan perintah :
sudo systemctl enable nginx
Selamat! Nginx sekarang terinstal dan berjalan!
Jika server Anda dilindungi oleh firewall dan status firewall aktif, maka Anda harus membuka port HTTP (80
) dan HTTPS (443
). Gunakan perintah berikut untuk membuka port yang diperlukan:
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload
Untuk memastikan layanan nginx berjalan, jalankan perintah :
sudo systemctl start nginx
Untuk melihat statusnya sudah aktif atau belum menggunakan perintah :
sudo systemctl status nginx
● nginx.service - The nginx HTTP and reverse proxy server Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset: disabled) Active: active (running) since Mon 20121-03-12 1648 UTC; 2s ago Process: 1677 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS) Process: 1675 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS) Process: 1673 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (code=exited, status=0/SUCCESS) Main PID: 1680 (nginx) CGroup: /system.slice/nginx.service ├─1680 nginx: master process /usr/sbin/nginx └─1681 nginx: worker process
Untuk akses langsung url bisa menggunakan ip ataupun domain yang di instal nginx
http://server_domain_name_or_IP/
Jika terlihat tampilan seperti ini, maka server nginx sudah dapat di pergunakan
Cara Menemukan Alamat IP Publik Server Anda
Untuk menemukan alamat IP publik server Anda, dengan mengetik
ip addr
maka akan tampil
[root@codeit-acep]# ip addr 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 link/ether 00:50:56:bf:46:16 brd ff:ff:ff:ff:ff:ff inet 10.1.85.52/22 brd 10.1.87.255 scope global noprefixroute ens192 valid_lft forever preferred_lft forever inet6 fe80::5410:eba4:e9e:8f07/64 scope link noprefixroute valid_lft forever preferred_lft forever
dikarenakan ens192 sebagai BROADCAST, maka kita gunakan ens192,kebanyakan server biasa menggunakan eth0 sebagai BROADCAST kebetulan pada server ini menggunakan ens192.
Setelah didapat ens192, kita jalankan perintah :
ip addr show ens192 | grep inet | awk '{ print $2; }' | sed 's/\/.*$//'
maka didapat
[root@codeit-acep]# ip addr show ens192 | grep inet | awk '{ print $2; }' | sed 's/\/.*$//' 10.1.1.123 fe89::5411:eba3:e9e:8a07
Default Folder Root Server
Direktori root server default adalah /usr/share/nginx/html. File yang ditempatkan di sana akan disajikan di server web Anda. Lokasi ini ditentukan dalam file konfigurasi server default Nginx, yang terletak di /etc/nginx/conf.d/default.conf. Jika ingin merubah path direktori webnya silahkan di rubah di file /etc/nginx/conf.d/default.conf untuk posisi folder webnya.
Konfigurasi Blok Server
Blok server tambahan apa pun, yang dikenal sebagai Host Virtual di Apache, dapat ditambahkan dengan membuat file konfigurasi baru di /etc/nginx/conf.d. File yang diakhiri dengan .conf di direktori itu akan dimuat ketika Nginx dimulai.
Konfigurasi Global Nginx
File konfigurasi Nginx utama terletak di /etc/nginx/nginx.conf. Di sinilah Anda dapat mengubah pengaturan seperti pengguna yang menjalankan proses daemon Nginx, dan jumlah proses pekerja yang muncul saat Nginx berjalan, antara lain.
Catatan :
Manajemen Nginx service Dengan systemctl
Anda dapat menggunakan perintah systemctl
untuk mengelola layanan Nginx, sama seperti unit systemd lainnya.
Untuk menghentikan atau mematikan Nginx service, ketik:
sudo systemctl stop nginx
Untuk memulai / start Nginx service, ketik:
sudo systemctl start nginx
Untuk restart / memuat ulang Nginx ketik :
sudo systemctl restart nginx
Reload Nginx service setelah Anda melakukan beberapa perubahan konfigurasi pada nginx:
sudo systemctl reload nginx
Nonaktifkan Nginx untuk memulai otomatis saat boot:
sudo systemctl disable nginx
Dan untuk mengaktifkannya kembali:
sudo systemctl enable nginx
Struktur Dasar File Konfigurasi Nginx
- File konfigurasi Nginx disimpan di direktori /etc/nginx.
- File konfigurasi Nginx adalah /etc/nginx/nginx.conf.
- File konfigurasi Server block (vhost) terletak dalam direktori /etc/nginx/conf.d. File-file konfigurasi yang ditemukan dalam direktori ini tidak digunakan oleh Nginx kecuali mereka ditautkan ke direktori /etc/nginx/sites-enabled.
- Mengaktifkan server block dilakukan dengan membuat symlink (pointer) dari situs file konfigurasi di direktori /etc/nginx/conf.d ke direktori sites-enabled.
- Untuk lebih mudah mengelola, gunakan nama domain untuk pemberian nama konfigurasi, semisal domain codeitworld.com maka file konfigurasi dapat bernama /etc/nginx/conf.d/codeitworld.com.conf
- Direktori /etc/nginx/snippets berisi potongan konfigurasi yang dapat dimasukkan dalam file server block. Jika Anda menggunakan segmen konfigurasi berulang, maka Anda dapat merombak segmen tersebut menjadi potongan dan menyertakan file snippet ke server block.
- File log nginx (access.log dan error.log) terletak di direktori /var/log/nginx/. Disarankan untuk membedakan antara accessdan file error log untuk setiap server block.
- Anda dapat mengatur direktori root dokumen domain Anda ke lokasi yang Anda inginkan. Lokasi yang paling umum untuk webroot meliputi:
– /home/<user_name>/<nama_situs>
– /var/www/<nama_situs>
– /var/www/html/<nama_situs>
– /opt/<nama_situs> - Tetapi secara default root server pada nginx ada di direktori /usr/share/nginx/html
Referensi :
https://www.digitalocean.com/community/tutorials/how-to-install-nginx-on-centos-7
https://www.cyberciti.biz/faq/how-to-install-and-use-nginx-on-centos-7-rhel-7/