Nama Nginx sudah mulai dikenal bagi yang ingin menghosting website di VPSnya, ini dikarenakan reputasinya sebagai web server yang ringan tapi memiliki performa maksimal. Sebenarnya cara installnya sendiri di Linux cukup mudah – tidak ada perbedaan signifikan antar distro – dan versi yang disediakan dari repository bisa dikatakan baru tapi dari stable bukan yang terbaru dari mainline. Kalau kita benar – benar ingin memanfaatkan nginx dengan fitur – fitur baru dan perbaikannya maka bisa mencoba mengcompilenya sendiri dari source code.
Keunggulan instalasi dari Nginx adalah kita bisa benar – benar menyetel konfigurasi dan fitur web servernya dari awal, karena default yang disediakan dari repository seingat saya dulu tidak ada fitur IPv6, SPDY (sekarang menjadi HTTP/2) dan PageSpeed Module. Sekarang mungkin sudah berubah, setidaknya harapan saya minimal bisa IPv6 karena sudah mulai populer digunakan.
Kekurangannya juga terletak pada compilenya ini, karena setiap kali ada update kita tidak bisa melakukan apt-get upgrade atau yum update, harus diulangi lagi prosesnya dari awal. Bisa merepotkan dan ada resiko downtime.
Nah… dalam tutorial saya sebelumnya hanya mengkonfigurasikan Nginx dengan PageSpeed Module dan ini sangatlah tidak ideal untuk penggunaannya sebagai web server. Sehingga ini saya gunakan untuk mencatat konfigurasi Nginx saat kompilasi source codenya. Biar tidak lupa pas saya ingin tahu dulu menambahkan parameter apa saja. Singkatnya: Ini cara install Nginx dari source yang lengkap. Menurut saya setidaknya. 🙂
Persiapan sebelum kompilasi Nginx
Biasanya pada template OS default VPS sudah ada Apache, perlu kita hapus dulu atau ganti Nginx aktif di port selain 80 agar tidak konflik. Disini saya menghapusnya:
- CentOS/RHEL/Fedora
yum remove httpd
- Debian/Ubuntu/Mint
apt-get purge httpd
Seperti biasa turuti dulu syarat – syaratnya:
- CentOS/RHEL/Fedora
yum install gcc-c++ pcre-devel zlib-devel make unzip
- Debian/Ubuntu/Mint
apt-get install build-essential zlib1g-dev libpcre3 libpcre3-dev unzip
Karena ini versi yang lebih lengkap maka kita mempersiapkan dulu PageSpeed Module:
cd
NPS_VERSION=1.9.32.10
wget https://github.com/pagespeed/ngx_pagespeed/archive/release-${NPS_VERSION}-beta.zip
unzip release-${NPS_VERSION}-beta.zip
cd ngx_pagespeed-release-${NPS_VERSION}-beta/
wget https://dl.google.com/dl/page-speed/psol/${NPS_VERSION}.tar.gz
tar -xzvf ${NPS_VERSION}.tar.gz
Lakukan secara berurutan. Versi PageSpeed Module yang digunakan adalah 1.9.32.10 dan bisa anda gantikan angkanya di variabel NPS_VERSION
, tinggal cek versi terbarunya saja.
Perjuangan instalasi Nginx dimulai
Akhirnya kita akan menjalankan proses compile Nginx ditambahkan modul – modul pihak ketiga yang penting:
cd
NGINX_VERSION=1.9.6
wget http://nginx.org/download/nginx-${NGINX_VERSION}.tar.gz
tar -xvzf nginx-${NGINX_VERSION}.tar.gz
cd nginx-${NGINX_VERSION}/
./configure \
--prefix=/usr/local/share/nginx \
--conf-path=/etc/nginx/nginx.conf \
--sbin-path=/usr/local/sbin \
--error-log-path=/var/log/nginx/error.log \
--with-openssl=/usr/bin/openssl \
--with-http_v2_module \
--with-http_ssl_module \
--with-http_realip_module \
--with-http_addition_module \
--with-http_sub_module \
--with-http_dav_module \
--with-http_flv_module \
--with-http_mp4_module \
--with-http_gunzip_module \
--with-http_gzip_static_module \
--with-http_random_index_module \
--with-http_secure_link_module
--with-http_stub_status_module \
--with-file-aio \
--with-pcre \
--with-ipv6 \
--add-module=$HOME/ngx_pagespeed-release-${NPS_VERSION}-beta
make
make install
Jalankan secara berurutan juga. Versi Nginx yang saya gunakan adalah terbaru mainline: 1.9.6, bisa anda ubah ke versi lain dari halaman downloadnya. Gantikan saja angka dalam variabel NGINX_VERSION
.
Persiapkan VPS anda
Sekarang kita perlu membuat init.d script
untuk dijalankan saat startup server:
nano /etc/init.d/nginx
Isinya silahkan dicopy-paste dari catatan saya sebelumnya.
Kemudian eksekusi perintah berikut secara berurutan:
useradd -r nginx
chmod +x /etc/init.d/nginx
chkconfig --add nginx
chkconfig --level 345 nginx on
Selanjutnya silahkan jalankan daemon nginx:
service nginx start
Yak, sudah selesai perjuangan kita. Untuk mengedit konfigurasi Nginx bisa dicek pada direktori /etc/nginx
dan untuk virtual host defaultnya ada di /usr/local/nginx
.
Ini masih cara instalasi, belum setting Nginxnya sendiri disambungkan dengan PHP-FPM dan database server MySQL misalnya. Semoga ada waktu untuk menulisnya. Haha. 😀
Semoga bermanfaat. 🙂
Sumber https://servernesia.com