Pada artikel kali ini, akan dibahas mengenai pengertian web server, fungsi web server, cara kerja web server, serta contoh-contohnya. Di era digital ini, internet seperti telah menjadi kebutuhan primer yang wajib dipenuhi semua orang.
Setiap kali pengguna internet menggunakan browser untuk menjelajahi internet, sebetulnya saat itu browser yang digunakan berperan sebagai klien yang mengirimkan permintaan kepada web server. Namun tahukah Anda, apa sebetulnya yang dimaksud dengan web server?
[ez-toc]
Pengertian Web Server
Secara singkat, pengertian web server adalah perangkat lunak yang memberikan layanan atau service kepada client untuk menerima request HTTP maupun HTTPS dari client yang dikenal. Client yang dimaksud adalah web browser (semisal: Internet Explorer, Google Chrome, Mozilla Firefox). Setelah itu, web server akan mengirimkan request yang diminta oleh client dalam bentuk halaman web, yang secara umum berbentuk dokumen HTML.
Fungsi Web Server
Fungsi utama dari sebuah web server adalah memproses berkas-berkas yang diminta oleh klien dan kemudian memberikan respon berupa halaman website yang terdiri dari teks, gambar, video, dokumen, dan sebagainya. Proses ini dilakukan melalui sebuah protokol komunikasi yang telah ditentukan sedemikian rupa.
Jadi ketika anda mengakses suatu website, saat itulah anda (sebagai klien) melakukan sebuah permintaan, kemudian jika alamat IP atau domain website benar, web server akan merespon permintaan anda tersebut dengan memberikan file atau data yang tersimpan pada file storage atau database website tersebut.
Cara Kerja Web Server
Anda mungkin telah mengetahui bahwa semua protokol yang terdapat di internet melibatkan satu pihak sebagai server dan pihak lainnya sebagai klien. Begitu pula dengan HTTP (Hypertext Transfer Protocol), yang merupakan wadah bagi aplikasi web yang dijalankan.
Dalam protokol HTTP, web server berperan sebagai pihak server, sementara web browser berperan sebagai pihak klien. Saat seorang pengguna internet memasukkan sebuah alamat website melalui browser tertentu (IE, Chrome, atau Firefox), maka selanjutnya browser akan memproses permintaan tersebut dengan mengirimkannya ke web server sesuai alamat yang diminta, kemudian menunggu hasilnya untuk beberapa saat.
Jika ternyata yang diminta oleh pengguna adalah sebuah dokumen, maka web server akan langsung mengirimkan dokumen tersebut ke browser yang digunakan. Namun jika dokumen yang diminta mengandung program server side, selanjutnya web server akan menjalankan program server side tersebut dan mengirimkan hasilnya dalam bentuk HTML.
Contoh Web Server
Setelah memahami pengertian web server, fungsi dan cara kerjanya, kini kita akan beranjak mengenal berbagai macam contoh web server yang yang paling umum dan populer. Berikut merupakan di antaranya :
1. Apache
Apache merupakan salah satu jenis web server yang paling banyak digunakan di internet. Awalnya, apache didesain untuk sistem operasi UNIX. Apache sendiri memiliki beberapa macam dukungan seperti kontrol akses, PHP, dan SSL. Kontrol akses apache dijalankan bergantung dari nomor IP CGI (Common Gateway Interface) atau nama host. Apache menempatkan kontrol akses sebagai modul, dan yang paling terkenal adalah modul Perl (Practical Extraction and Report Language). Sementara itu, PHP (Personal Home Page) merupakan sebuah program yang menyerupai CGI, untuk memproses teks dan bekerja pada web server.
PHP pada apache web server ditempatkan sebagai salah satu modulnya (mod_php) untuk membuat kinerja PHP lebih baik dan stabil. Apache sendiri termasuk dalam kategori freeware, dengan proses instalasi yang relatif mudah, dapat beroperasi pada berbagai variasi sistem operasi, mudah pengaturan konfigurasinya hanya dengan empat file konfigurasi, dan juga mudah menambahkan peripheral lain ke dalam platform web servernya.
2. Nginx
Nginx (dibaca engine x) merupakan salah satu web server open source selain apache. Walaupun sebetulnya apache sudah begitu populer, terdapat satu kekurangannya, yaitu tak dapat menangani kebutuhan web server dengan traffic yang tinggi. Nginx kemudian tercipta untuk menjadi sebuah solusi yang lebih mengedepankan performa, kemudahan, dan kecepatan. Nginx sendiri memiliki beberapa kelebihan, di antaranya :
- Arsitektur Event-Based. Berbeda dengan Apache yang menggunakan process based, nginx menggunakan arsitektur event-based sehingga mampu meminimilkan thread untuk memproses sebuah permintaan dari klien, yang artinya memori yang terpakai juga menjadi lebih kecil. Server ringan dan sangat responsif.
- Performa Luar Biasa. Semakin banyak thread digunakan, maka semakin banyak memori yang diperlukan. Dalam hal ini, nginx telah didesain untuk menangani hingga sepuluh juta permintaan klien tiap harinya, atau beberapa ratus permintaan per detik.
- Fitur Mantap. Jika apache seperti toko serba ada yang menyediakan produk dengan lengkap, nginx hanya menyediakan fitur-fitur yang kebanyakan orang cari, seperti static file serving, virtual hosts, reverse proxying, access control, URL rewriting, dsb.
3. IIS (Internet Information Services)
IIS merupakan web server yang digunakan dalam Windows, terutama Windows 2000 dan Windows 2003. Web Server IIS didukung dengan berbagai macam komponen pendukung seperti protokol karingan TCIP/IP, DNS, dan software untuk membuat situs web.
IIS sendiri sebetulnya dapat digunakan sebagai platform tempat aplikasi web berjalan. IIS mendukung berbagai macam protokol seperti HTTP, FTP, SMTP, NNTP, dan SSL. Kelebihannya, IIS merupakan web server yang sangat kompatibel dengan Windows sebagai imbas dari keluaran Microsoft, mendukung platform .NET yang hanya bisa dilakukan dengan IIS. Walau begitu, IIS termasuk web server berbayar, cukup mudah diserang oleh para cracker, serta keamanannya mudah ditembus.
4. Lighttpd
Lighttpd (dibaca : lightly) merupakan salah satu jenis web server open source lainnya yang awalnya ditulis oleh programmer berkebangsaan Jerman dalam bahasa pemrograman C.
Web server yang satu ini dapat beroperasi dalam komputer dengan sistem operasi Linux atau keluarga Unix lainnya. Salah satu kelebihan menggunakan Lighttpd adalah kemampuannya dalam mengatur CPU load dengan efektif, juga beberapa fitur advance lainnya seperti SCGI, FastCGi, Output-Compression dan URL-Writing.
Demikianlah penjelasan mengenai pengertian web server beserta fungsi, cara kerja dan contoh-contohnya. Semoga dapat menambah pengetahuan Anda di bidang web server sehingga jika Anda ingin membangun sebuah website profesional, Anda dapat memilih web server mana yang akan Anda gunakan.
Editor: Muchammad Zakaria
Download berbagai jenis aplikasi terbaru, mulai dari aplikasi windows, android, driver dan sistem operasi secara gratis hanya di Nesabamedia.com: