Tulisan ini menjelaskan seputar pengertian Nginx ( dibaca engine-x ) Web Server, sejarah singkat dan pengembangnya, perbandingan dan popularitasnya dibanding web server lain seperti Apache atau IIS, sampai fitur-fitur dan keunggulannya.
Tulisan ini disertai pula dengan sumber daya bagi pembaca mempelajari Nginx, mulai dari wiki, kamus istilah, sampai sejumlah website yang menyediakan panduan menyeluruh Nginx mulai nol.
Diharapkan dengan tulisan ini setiap orang memperoleh informasi dasar yang cukup tentang Nginx serta bagaimana mulai mengoperasikannya.
Daftar Isi :
Pengertian Nginx Secara Umum
Nginx adalah perangkat lunak web server performa tinggi dengan fasilitas canggih yang dikembangkan oleh perusahaan Nginx, Inc. dari Rusia yang tersedia untuk GNU/Linux, BSD, DARWIN, Windows, macOS, dan Unix.
Penemu Nginx adalah Igor Sysoev pada 2002 dan dirilis publik pertama kali pada 2004. Kode sumber Nginx ditulis dalam bahasa C dan dikembangkan secara terbuka di internet.
Nginx adalah perangkat lunak bebas berlisensi ala BSD 2-Clause Situs resmi Nginx adalah https://nginx.org.
![]() |
Logo Nginx (dari situsnya) |
2. Sejarah Nginx & Pengembang
- Nginx dimulai tahun 2002 oleh Igor Sysoev seorang insinyur perangkat lunak dari Rusia.
- Versi paling awal Nginx adalah 0.1.0 yang diterbitkan pada 5 Oktober 2004 yang ada di situs https://nginx.org/download.
- Perusahaan Nginx, Inc. didirikan oleh Igor pada 2011 untuk memberikan dukungan teknis berbayar terhadap pengguna Nginx.
- Versi terbaru Nginx adalah 1.13.10 yang diterbitkan pada 20 Maret 2018.
3. Fitur & Keunggulan
Fasilitas Nginx sangat banyak yang terbagi berdasar fungsinya sebagai web server, ditambah kemampuan tambahannya sebagai reverse proxy dan mail proxy.
Adapun pada dasarnya Nginx dibuat untuk memecahkan masalah C10k (melayani 10.000 koneksi per satu waktu) serta secara terang-terangan bertujuan melampaui performa Apache (web server paling terkenal di dunia).
Hingga sekarang Nginx berkembang sangat pesatnya dengan begitu banyak keunggulan yang dimiliki secara ringkas sebagai berikut.
Web server :
- Kemampuan melayani puluhan ribu permintaan atau lebih dengan pemakaian memori rendah
- Dukungan protokol web HTTP dan HTTP/2
- Dukungan Transport Layer Security (TLS) dan Secure Socket Layer (SSL)
- reverse proxy
- FastCGI, SCGI, uWSGI
Mail proxy :
- Dukungan SSL dan TLS
- Dukungan STARTTLS (atau Opportunistic TLS)
- Proxy untuk SMTP, IMAP, dan POP3
Dukungan sistem operasi :
- GNU/Linux (kernel 2.2 sampai dengan 4.0)
- AIX dan HP-UX
- FreeBSD
- MacOS
- Windows
- Windows Server
Dan masih banyak lagi yang bisa dibaca lebih lengkap pada https://nginx.org/en.
4. Modularitas
Nginx didesain modular. Artinya, Nginx mirip Firefox, bisa dipasangi add-on (diistilahkan module) untuk menambah fungsionalitasnya.
Oleh karena itu, terdapat banyak sekali modules untuk Nginx dengan berbagai fasilitas untuk berbagai kebutuhan.
Modul-modul ini dibuat oleh berbagai komunitas pengembang.
Sebagai gambarannya, Nginx bawaan yang tidak memiliki fitur proxy itu, pengguna bisa menambahkan fitur dengan modul baik itu resmi dari Nginx ataupun buatan pengguna sendiri.
- https://github.com/agile6v/awesome-nginx (dari semua pihak)
- https://www.nginx.com/products/nginx/modules
- https://www.nginx.com/resources/wiki/modules (dari pihak ketiga)
- https://www.airpair.com/nginx/extending-nginx-tutorial
- http://www.evanmiller.org/nginx-modules-guide.html
Tampilan tabel daftar modul Nginx dari pihak ketiga :
Cuplikan kumpulan modul dan distribusi modul Nginx yang dibuat oleh pengguna :
Cuplikan daftar modul Nginx dari repositori Ubuntu 17.10 :
5. Perbandingan & Popularitas
Nginx paling terutamanya dibandingkan dengan Apache.
Di antara perbandingan yang paling menarik ialah pertimbangan apakah kita memakai .httaccess seperti Apache atau tidak.
Selain itu, sebaliknya, dilihat dari jenisnya maka Nginx yang diistilahkan asynchronous web server bisa dibandingkan terhadap Lighthttpd, bukan terhadap Apache atau Cherookee yang diistilahkan process-based web server.
Adapun mengenai perbandingan-perbandingan itu ada pranala seperti :
Nginx disukai banyak system administrator oleh karena itu banyak diskusi Nginx di internet.
Setiap forum yang mempelajari distro GNU/Linux pasti memiliki pembahasan Nginx, terutama sekali distro yang serius untuk server seperti Debian dan CentOS.
Selain itu, banyak forum dibentuk pada tempat diskusi online seperti Reddit dan StackOverflow yang membahas pengertian Nginx.
- Forum resmi : https://forum.nginx.org
- StackOverflow : https://stackoverflow.com/search?q=nginx
- ServerFault : https://serverfault.com/questions/tagged/nginx
- Reddit : https://www.reddit.com/r/nginx
- Forum Ubuntu : https://ubuntuforums.org/tags.php?tag=nginx
- AskUbuntu.com : https://askubuntu.com/search?q=nginx
- Forum CentOS : https://www.centos.org/forums
- Forum Fedora : https://forums.fedoraforum.org/search.php?searchid=406962
- Forum openSUSE : https://forums.opensuse.org/search.php?searchid=3286531
- Forum DigitalOcean : digitalocean.com/community/questions?q=nginx
- Forum SitePoint : sitepoint.com/community/search?q=nginx
7. Referensi Pengoperasian
Dokumentasi berupa manual, tutorial, wiki mengenai Nginx bisa ditemukan secara online pada pranala-pranala berikut :
Dari pengembang Nginx :
- Wiki : wiki.nginx.org
- Dokumentasi : https://nginx.org/en/docs
- Buku-buku panduan : nginx.com/resources/library
- FAQ : nginx.com/resources/wiki/community/faq
- Kamus istilah : nginx.com/resources/glossary
Dari komunitas :
- Server World : https://www.server-world.info/en/note?os=CentOS_7&p=nginx
- Howtoforge : https://www.howtoforge.com/tutorials/nginx/
Mengapa Orang Memakai Nginx ?
Berikut ini sejumlah alasan mengapa orang memilih dan mempelajari Nginx alih-alih web server lain seperti Apache.
- Karena Nginx web server adalah free software, pengguna bebas menggunakan, mempelajari, mengubah, dan mendistribusikan program Nginx.
- Karena Nginx berlisensi BSD (non-copyleft) yang menarik bagi pengembang dari kalangan proprietary software.
- Karena Nginx berkecepatan tinggi selain sangat hemat sumber daya. Performa Nginx dikatakan jauh melampaui Apache dengan pemakaian CPU/RAM lebih rendah.
- Karena Nginx fleksibel, bisa ditambah atau disesuaikan fasilitasnya dengan modul-modul, dan tersedia sangat banyak modul buatan komunitas.
- Karena Nginx punya komunitas yang sangat besar dari kalangan system administrator ahli seperti tersebut di atas.
- Karena Nginx punya perusahaan pendukung yang memberikan dukungan teknis berbayar untuk tingkat perusahaan.
- Karena Nginx serbabisa.
Pertanyaan dan Jawaban
Berikut ini sejumlah pertanyaan yang bisa muncul seputar pengertian Nginx web server disertai jawabannya.
Bagaimana asal usul Nginx ?
Nginx sebenarnya dibuat untuk memecahkan tantangan C10k pada tahun 1990-an, utamanya didesain untuk melampaui performa Apache Web Server.
Nginx lahir di Rusia karena Igor Sysoev orang Rusia.
Apa saingan terberat Nginx ?
Apache Web Server.
Di mana saya bisa memperoleh info keamanan Nginx ?
Lihat https://nginx.org/en/security_advisories.html.
Bisakah saya menjalankan skrip-skrip CGI pada Nginx secara langsung ?
Secara langsung tidak, tetapi Anda cukup menyambungkan Nginx dengan FastCGI atau uWSGI misalnya, untuk melakukan itu.
Lihat https://www.nginx.com/resources/wiki/start/topics/examples/fastcgiexample/.
Bisakah Nginx dipasang di Windows ?
Bisa, lihat https://nginx.org/en/docs/windows.html.
Bisakah Nginx diatur lewat GUI ?
Bisa, misalnya pakai Webmin, lihat https://guides.wp-bullet.com/using-webmin-module-to-manage-nginx-sites-on-easyengine/.
Bisakah Nginx dipasang di VPS punya saya ?
Bisa, lihat misalnya https://www.digitalocean.com/community/tutorials/how-to-configure-the-nginx-web-server-on-a-virtual-private-server.
Bisakah Nginx dipasang di komputer Raspberry Pi ?
Bisa, lihat https://www.raspberrypi.org/documentation/remote-access/web-server/nginx.md.
Bisakah Nginx dijadikan YouTube Cache ?
Bisa dengan digabung dengan Squid atau semisalnya, lihat contohnya https://tuts.web.id/youtube-caching-menggunakan-squid-nginx.
Bisakah Nginx dijadikan Continous Integration (CI) server misalnya dengan Jenkins CI ?
Bisa, lihat https://www.nginx.com/blog/introducing-cicd-with-nginx-and-nginx-plus/.
Bagaimana saya bisa ikut mengembangkan dan berkontribusi ke Nginx ?
Lihat https://nginx.org/en/docs/dev/development_guide.html dan https://nginx.org/en/docs/contributing_changes.html.
Referensi
- https://nginx.org
- https://nginx.org/en
- https://en.wikipedia.org/wiki/Nginx
- http://hg.nginx.org/nginx
- https://www.nginx.com/resources/wiki
- https://www.nginx.com/resources/wiki/community/faq
Artikel ini berlisensi CC BY-SA 3.0.