Sebelum kita memahami apa itu nginx, kita harus mengetahui cara mengucapkan nginx.
Ini bukan N G I N X. nginx diucapkan sebagai “Mesin X”.
nginx adalah bentuk singkat setelah Anda menghapus kedua e dari "Engine X".
nginx adalah server web open source yang mirip dengan Apache, tetapi sangat ringan. nginx adalah server web dan server proxy terbalik.
Berikut adalah beberapa fitur nginx:
- Ini melayani file statis dan indeks
- Proxy terbalik dengan caching
- Mendukung SSL
- Penyeimbangan beban sederhana dengan toleransi kesalahan
- Server virtual berbasis nama dan ip dapat dikonfigurasi
- Otentikasi dasar HTTP
- Mendukung modul penulisan ulang
- Mendukung gzip, XSLT, SSI, dan filter pengubahan ukuran gambar
- Semua fitur server proxy email utama didukung
- dan banyak lagi..
Ini adalah bagian dari rangkaian artikel berkelanjutan tentang nginx.
Mari kita mulai dengan menginstal nginx dan menjalankannya, yang hanya membutuhkan waktu 5 menit.
1. Unduh nginx
Unduh nginx dari sini, atau gunakan wget seperti yang ditunjukkan di bawah ini. Versi stabil saat ini adalah nginx 1.0.5
cd wget http://nginx.org/download/nginx-1.0.5.tar.gz tar xvfz nginx-1.0.5.tar.gz cd nginx-1.0.5
2. Instal nginx
Ada banyak opsi yang dapat Anda berikan ke ./configure. Untuk mengidentifikasi daftar semua opsi konfigurasi, lakukan hal berikut.
./configure --help
Berikut ini adalah beberapa modul http yang diaktifkan secara otomatis. Jika Anda perlu menonaktifkannya, Anda harus meneruskan “–tanpa-http_[nama_modul]” ke opsi ./configure. Misalnya, untuk menonaktifkan “proxy_module”, Anda harus melakukan ./configure –without-http_proxy_module.
- charset_module – Modul kumpulan karakter HTTP
- gzip_module – Modul gzip HTTP untuk kompresi
- ssi_module – Sisi server menyertakan modul
- auth_basic_module – Modul otentikasi HTTP Basic.
- autoindex_module – Indeks otomatis
- rewrite_module – Penulisan ulang HTTP yang mendukung aturan penulisan ulang
- proxy_module – modul proxy terbalik HTTP
- fastcgi_module – Dukungan untuk fastcgi
- memcached_module – Modul memcached untuk nginx
- ..
Berikut ini adalah beberapa modul httpd yang tidak diaktifkan secara otomatis. Jika Anda perlu mengaktifkannya, Anda harus meneruskan “–with-http_[module_name]” ke opsi ./configure. Misalnya, untuk mengaktifkan SSL di nginx, Anda harus melakukan “./configure –with-http_ssl_module”.
- ssl_module – Dukungan untuk modul Secure Socket Layer (SSL)
- xslt_module – Dukungan untuk modul Extensible Stylesheet Language Transformations (XSLT)
- perl_module – Dukungan untuk Perl
- ..
Untuk memulainya, instal nginx dengan opsi konfigurasi default dengan melakukan ./configure seperti yang ditunjukkan di bawah ini.
./configure make make install
Selama ./configure, Anda mungkin mendapatkan "./configure:error:modul penulisan ulang HTTP memerlukan perpustakaan PCRE." pesan kesalahan tentang pustaka PCRE yang hilang yang diperlukan oleh modul penulisan ulang http nginx.
Untuk mengatasi masalah ini, instal paket “pcre” dan “pcre-devel” di Linux Anda, atau nonaktifkan modul rewrite dengan melakukan “./configure –without-http_rewrite_module”
nginx akan diinstal di bawah /usr/local/nginx seperti yang ditunjukkan oleh output ./configure.
Configuration summary + using system PCRE library + OpenSSL library is not used + md5: using system crypto library + sha1: using system crypto library + using system zlib library nginx path prefix: "/usr/local/nginx" nginx binary file: "/usr/local/nginx/sbin/nginx" nginx configuration prefix: "/usr/local/nginx/conf" nginx configuration file: "/usr/local/nginx/conf/nginx.conf" nginx pid file: "/usr/local/nginx/logs/nginx.pid" nginx error log file: "/usr/local/nginx/logs/error.log" nginx http access log file: "/usr/local/nginx/logs/access.log" nginx http client request body temporary files: "client_body_temp" nginx http proxy temporary files: "proxy_temp" nginx http fastcgi temporary files: "fastcgi_temp" nginx http uwsgi temporary files: "uwsgi_temp" nginx http scgi temporary files: "scgi_temp"
3. Ubah Port Dengar nginx Default
Nginx dikonfigurasi untuk mendengarkan secara default pada port 80. Jika Anda menginstal ini pada mesin untuk tujuan pengujian, yang sudah menjalankan server apache, Anda harus mengubah port mendengarkan nginx.
Mirip dengan file httpd.conf Apache, nginx memiliki file nginx.conf yang terletak di bawah /usr/local/nginx/conf.
Di bagian server nginx.conf, ubah port 80 menjadi 8081.
# vi /usr/local/nginx/conf/nginx.conf server { listen 8081; server_name localhost;
4. Mulai Server Nginx
nginx executable terletak di bawah direktori /usr/local/nginx/sbin. Panggil saja executable ini untuk memulai server nginx.
cd /usr/local/nginx/sbin ./nginx
Setelah Anda memulai ini, Anda akan melihat "proses master" nginx dan "proses pekerja" jika Anda melakukannya ps.
# ps -ef | grep -i nginx root 18596 13:16 nginx: master process ./nginx nobody 18597 13:16 nginx: worker process
Setelah Anda memulai server nginx, buka http://your-ip-address/ (atau http://your-ip-address:8081, jika Anda mengubah direktif listen di nginx.conf), Anda akan melihat default nginx index.html, yang seharusnya mengatakan “Selamat datang di nginx!”
5. Hentikan Server Nginx
Untuk menghentikan server nginx, lakukan hal berikut.
cd /usr/local/nginx/sbin ./nginx -s stop
Untuk melihat versi nginx saat ini, lakukan hal berikut:
# ./nginx -v nginx: nginx version: nginx/1.0.5
Untuk men-debug masalah, lihat file error.log dan access.log yang terletak di bawah /usr/local/nginx/logs
# ls /usr/local/nginx/logs/ access.log error.log nginx.pid