WEB SERVER: Pengertian, Cara Kerja dan Jenis-Jenisnya


WEB SERVER


Apa tu Web Server?

Web server adalah merupakan software yang memberikan layanan data yang berfungsi menerima permintaan HTTP atau HTTPS dari client yang dikenal dengan browser web dan mengirimkan kembali hasilnya dalam bentuk halaman - halaman web yang umumnya berbentuk dokumen HTML. Web server menunggu permintaan dari client yang menggunakan browser seperti Netscape Navigator, Internet Explorer, Modzilla, dan program browser lainnya yang disebut sebagai User Agent. Jika ada permintaan dari browser, maka web server akan memproses permintaan itu kemudian memberikan hasil prosesnya berupa data yang diinginkan kembali ke browser. Data ini mempunyai format yang standar, disebut dengan format SGML (standar general markup language). Data yang berupa format ini kemudian akan ditampilkan oleh browser sesuai dengan kemampuan browser tersebut. Contohnya, bila data yang dikirim berupa gambar, browser yang hanya mampu menampilkan teks (misalnya lynx) tidak akan mampu menampilkan gambar tersebut, dan jika ada akan menampilkan alternatifnya saja. Web server, untuk berkomunikasi dengan client-nya (web browser) mempunyai protokol sendiri, yaitu HTTP (hypertext transfer protocol). Dengan protokol ini, komunikasi antar web server dengan client-nya dapat saling dimengerti dan lebih mudah.  Seperti telah dijelaskan diatas, format data pada world wide web adalah SGML. Tapi para pengguna internet saat ini lebih banyak menggunakan format HTML (hypertext markup language) karena penggunaannya lebih sederhana dan mudah dipelajari. Kata HyperText mempunyai arti bahwa seorang pengguna internet dengan web browsernya dapat membuka dan membaca dokumen-dokumen yang ada dalam komputernya atau bahkan jauh tempatnya sekalipun.  Hal ini memberikan cita rasa dari suatu proses yang tridimensional, artinya pengguna internet dapat membaca dari satu dokumen ke dokumen yang lain hanya dengan mengklik beberapa bagian dari halaman-halaman dokumen (web) itu.  Proses yang dimulai dari permintaan webclient (browser), diterima web server, diproses, dan dikembalikan hasil prosesnya oleh web server ke web client lagi dilakukan secara transparan. Setiap orang dapat dengan mudah mengetahui apa yang terjadi pada tiap- tiap proses. Secara garis besarnya web server hanya memproses semua masukan yang diperolehnya dari web clientnya.

Cara kerja web server :

  1. Pada saat browser meminta data web page ke server maka instruksi permintaan data oleh browser tersebut di kemas di dalam TCP yang merupakan protokol transport dan dikirim ke alamat yang dalam hal ini merupakan protocol berikutnya yaitu Hyper Text Transfer Protocol (HTTP). HTTP ini merupakan protocol yang digunakan dalam World Wide Web (WWW) antar komputer yang terhubung dalam jaringan di dunia ini.  b. Data yang di passing dari browser ke Web server disebut sebagai HTTP request yang meminta web page dan kemudian web server akan mencari data HTML yang ada dan di kemas dalam TCP protocol dan di kirim kembali ke browser.
  2. Data yang dikirim dari server ke browser disebut sebagai HTTP response. Jika data yang diminta oleh browser tidak ditemukan oleh di web server maka akan menimbulkan error di web page yaitu Error : 404 Page Not Found.

Jenis-Jenis Web Server:

1.      Apache
Apache merupakan Aplikasi Web Server yang paling banyak digunakan saat ini, selain dapat berjalan di banyak sistem operasi seperti Windows, Linux dan lainya, Apache juga bersifat Open Source alias Gratis. Secara default Apache menggunakan Script PHP dan menggunakan MySQL sebagai Data Base nya dan kesemuanya itu dapat di gunakan secara gratis pula.

·         Apache di Ms. Windows
Ada beberapa Aplikasi Apache yang dapat berjalan di Windows yaitu :
1)      Apache2 tried
2)      XAMPP
3)      WAMPP
4)      dll
·         Apache di Linux
1)      LAMPP
2)      XAMPP
3)      Atau kita bisa juga menginstall satu persatu seperti apache(http), PHP dan mysql melalui Source code yang dapat di download di internet secara gratis.

Berikut ini merupakan kelebihan Web Server Apache:
a.      Apache termasuk dalam kategori freeware.
b.      Apache mudah sekali proses instalasinya jika dibanding web server lainnya seperti NCSA, IIS, dan lain-lain.
c.       Mampu beroperasi pada berbagai platform sistem operasi.
d.      Mudah mengatur konfigurasinya. Apache mempunyai hanya empat file konfigurasi.
e.      Mudah dalam menambahkan peripheral lainnya ke dalam platform web servernya.

Berikut ini merupakan kekurangan Web Server Apache:
a.      web server Apache tidak memiliki kemampuan mengatur load seperti IIS, sehingga akan terus mem-fork proses baru hingga nilai MaxClients tercapai atau hingga batas yang diizinkan oleh OS. Ini tentunya menguntungkan penyerang karena habisnya RAM akan lebih cepat tercapai.
b.      Apache tidak memproses karakter kutip dalam string Referrer dan UserAgent yang dikirimkan oleh client. Ini berarti client dapat memformulasi inputnya secara hati hati untuk merusak format baris log akses.
c.       Terganggunya proses upload data, yang bisa menyebabkan software salah dalam menerjemahkan ukuran data yang masuk.

2.      Apache Tomcat
Apache tomcat adalah web server berbasis open source yang mendukung untuk penggunaan JSP (Java Server Pages). Secara default, server tomcat ini belum memiliki package admin, sehingga tidak ada akses untuk admin. Yang ada hanyalah tomcat manager untuk memdeploy aplikasi web melalui file .war dari java web.  Ketika kita berusaha masuk ke URL admin ada keterangan Tomcat's administration web application is no longer installed by default. Download and install the "admin" package to use it. Hal itu dikarenakan tidak ada package admin dalam apache tomcat tersebut. Akses administration server tomcat ini bisa untuk setting JNDI. Java Naming and Directory Interface (JNDI) adalah sebuah API yang mendeskripsikan library Java yang standar untuk mengakses layanan naming dan directory seperti Domain Name Syatem (DNS), dan Lightweight Directory Access Protocol (LDAP).  Apache Tomcat merupakan implementasi software open source dari Java Servlet dan JavaServer Pages teknologi. Java Servlet dan JavaServer Pages spesifikasi yang dikembangkan di bawah Java Community Process.

Berikut ini merupakan kelebihan Apache Tomcat :
a.      Performanya yang tinggi, stabil, memiliki banyak fitur
b.      Mudah dikonfigurasi
c.       Menggunakan hanya sedikit sumber daya pada server.
d.      Tidak bergantung kepada thread untuk melayani client.

Berikut ini merupakan kekurangan Apache Tomcat :
a.      Belum mendukung IPV6
b.      Update/patch versi terbarunya lama keluar
c.       Fast-CGInya tidak berfungsi maksimal
d.      Pemakainya tidak sebanyak Apache atau IIS(Komunitasnya tidak sebanyak Apache atau IIS)

3.      Web Server IIS
IIS atau Internet Information Services atau Internet Information Server adalah sebuah HTTP web server yang digunakan dalam sistem operasi server Windows, mulai dari Windows NT 4.0 Server, Windows 2000 Server atau Windows Server 2003. Layanan ini merupakan layanan terintegrasi dalam Windows 2000 Server, Windows Server 2003 atau sebagai add-on dalam Windows NT 4.0. Layanan ini berfungsi sebagai pendukung protokol TCP/IP yang berjalan dalam lapisan aplikasi (application layer). IIS juga menjadi pondasi dari platform Internet dan Intranet Microsoft, yang mencakup Microsoft Site Server, Microsoft Commercial Internet System dan produkproduk Microsoft BackOffice lainnya.  IIS telah berevolusi semenjak diperkenalkan pertama kali pada Windows NT 3.51 (meski kurang banyak digunakan) hingga IIS versi 6.0 yang terdapat dalam Windows Server 2003. Versi 5.0 diintegrasikan dalam Windows 2000, sedangkan Windows XP Professional memiliki IIS versi 5.1. Windows NT 4.0 memiliki versi 4.01 yang termasuk ke dalam add-on Windows NT Option Pack. Dalam Windows NT 4.0 Workstation atau Windows 95/98, IIS juga dapat diinstalasikan sebagai Microsoft Personal Web Server (PWS).

Komponen pendukung IIS antara lain:
a)      Protocol jaringan TCP/IP
b)      Domain Name System(DNS)
c)      Direkomendasikan untuk menggunakan format NTFS demi keamanan
d)      Software untuk membuat situs web, salah satunya Microsoft FrontPage

Fitur-fitur IIS adalah sebagai berikut:
a)      IIS dapat digunakan sebagai platform dimana aplikasi web berjalan. Hal itu dapat dilakukan menggunakan ASP, ASP.NET, ISAPI,CGI, Microsoft .Net Framework, VBScript, Jscript dan PHP.
b)      IIS mendukung protocol HTTP, FTP, SMTP, NNTP dan SSL.
c)      IIS mengizinkan aplikasi web untuk dijalankan sebagai proses yang terisolasi dalam ruangan memori terpisah untuk mencegah satu aplikasi membuat crash aplikasi lain.
d)      IIS dapat diatur dengan Microsoft Management Console atau menggunakan skrip Windows Scripting Host
e)      IIS mendukung bandwidth throttling yang dapat mencegah sebuah situs web memonopoli bandwidth yang tersedia.

Berikut ini merupakan kelebihan IIS:
a)      Lebih kompatibel dengan Windows karena memang IIS adalah keluaran Microsoft
b)      Untuk platform .NET, user hanya bisa menggunakan IIS
c)      IIS memiliki fitur URL Filtering untuk mem-filter website yang tidak diinginkan

Berikut ini merupakan kekurangan IIS:
a)      Tidak gratis (web server berbayar)
b)      Port 80 (Port untuk layanan web) sangat mudah diserang oleh cracker
c)      Keamanan file log juga sangat mudah ditembus sehingga sistem password pun akan mudah didapatkan.

4.      Web server LIGHTTPD
Web Server yang alamat websitenya di http://lighttpd.net/ ini ditulis dalam bahasa pemrograman C. Dapat dijalankan pada sistem operasi Linux dan  sistem operasi Unix-like lainnya, serta dapat pula dijalankan pada sistem operasi Windows. Lighttpd bersifat open source dan didistribusikan dengan lisensi BSD. Lighttpd mengklaim dirinya sebagai web server yang “memakan” sedikit space memori jika dibandingkan dengan web server lain. Selain itu lighttpd mempunyai kemampuan untuk mengatur cpu-load secara efektif dan beberapa fitur advance seperti FastCGI, SCGI, Auth, OutputCompression, URL-Rewriting dan lain-lain.

Fitur-fitur yang disediakan oleh lighttpd adalah sebagai berikut:
a)      Dukungan load-balancing FastCGI, SCGI, dan HTTP proxy.
b)      Dukungan chroot.
c)      Web server berbasis select()-/poll()-/epoll()
d)      Dukungan untuk skema notifikasi event yang lebih efisien seperti queue dan epol.
e)      Conditional rewrites (mod_rewrite).
f)       Dukungan SSL dan TLS, via OpenSSL. 
g)      Otentikasi terhadap sebuah server LDAP
h)      Statistik RRDtool
i)        Rule-based downloading dengan kemungkinan penanganan sebuah script hanya   otentikasi
j)        Dukungan Server Side Includes k. Dukungan modules l. Dukungan minimal WebDAV

Berikut ini merupakan kelebihan Lighttpd:
a)      Virtual hosting yang fleksibel
b)      HTTP compression menggunakan mod_compress dan mod_deflate terbaru (1.5.x)
c)      Berukuran kecil (kurang dari 1 MB)
d)      Desain single-process hanya dengan beberapa thread. Tidak ada proses atau thread dimulai per koneksi.

Berikut ini merupakan kekurangan Lighttpd:
a)      Belum support IPV6
b)      Update/patch versi terbarunya lama keluar
c)      Fast-CGInya tidak berfungsi maksimal
d)      Pemakainya tidak sebanyak Apache atau IIS (komunitasnya tidak sebanyak Apache atau IIS)

5.      Nginx
Nginx adalah sebuah web server kedua yang paling banyak digunakan saat ini setelah Apache, Nginx atau bisa disebut Engine X banyak digemari karena layanan server yang satu ini cukup stabil dan hemat. Nginx merupakan salah satu web server selain Apache yang ternyata juga menggunakan lisensi open source. Selain itu, Nginx bisa dikaitkan sebagai salah satu web server yang menjadi saingan dari apache. Adapun kelebihan Nginx yang tidak dapat dilakukan oleh web server lain, yakni adalah dapat menangani kebutuhan web server dengan trafik yang sangat tinggi, sekaligus mengepankan performa, kemudahan, dan kecepatan. Hal itulah sedikit keunggulan Nginx, dan berikut ini adalah kelebihan yang diunggulkan oleh Nginx:
·         Arsitektur Event-Based: Apache menggunakan process based, sedangkan Nginx menggunakan arsitektur event-based sehingga dinilai lebih mampu meminimalkan thread untuk memproses permintaan dari klien.
·         Kinerja Luar Biasa: Nginx sengaja didesain oleh pengembangnya untuk dapat menangani banyak permintaan dari klien, bahkan dapat menangani hingga sepuluh juta permintaan setiap harinya.
·         Kaya Akan Fitur: Nginx menyediakan berbagai macam fitur yang umumnya banyak dicari. Adapun fitur tersebut seperti static file serving, virtual hosts, reverse proxying, access control, URL rewriting, dan lain sebagainya.
·         Open Source
·         Konfigurasi yang mudah. Menggunakan sedikit sumber daya

Kekurangan Web Server Nginx:
1)      Update yangcukup lama dibganding webserver lainnya.
2)      Fast CGI yang tidak berfungsi sempurna.
3)      Kadangkala ada masalah pada .htaccess namun hal ini tergantung dari konfigurasi webmasternya sendiri.
4)      Pemakai tidak sebanyak Apache / IIS.


6.      Litespeed
Jenis server ini mampu meninkatkan performa PHP hingga mencapai 50%, bahkan mampu melebihi performa server apache hingga enam kali lebih cepat, memiliki system anti DDoS, mampu melakukan pembatasan terhadap validasi HTTP request. Memiliki system pencegahan overloading yang baik sehingga akan menguntungkan untuk Anda. System recovery terhadap kegagalan juga bisa dilakukan secara langsung dan otomatis, memiliki system yang cukup kompetibel dengan Cpanel, Plesk dan direct admin. Memiliki dukungan kompabilitas terhadap system mod_security request filtering. Lebih menguntungkannya lagi, jenis server ini dapat sesuai atau compatible dengan Apache .

Kelebihan web server Litespeed:
1)      Kebutuhan hardware yang tidak terlalu tinggi
2)      Mudah dipelajariMemiliki customer support (CS) dan komunitas yang cukup baik
3)      Transisi yang mudah dari format apache
4)      Kualitas keamanan yang terjamin dengan mengaplikasikan mod_security
5)      Memiliki kecepatan proses dan stabilitas yang dapat diandalkan

Kekurangan web server Litespeed:
1)      Harga yang cukup mahal
2)      Beberapa mod dan aplikasi tidak semuanya dapat ditransisi

7.      Web server Jigsaw
Jigsaw adalah (W3C) World Wide Web Consortium’s terdepan platform web server. Ini adalah berfungsi penuh, berorientasi objek server web yang ditulis di Jawa yang menyediakan sampel HTTP 1.1 implementasi, dan menawarkan berbagai fitur di atas arsitektur maju.
The Jigsaw Web Server ini dirancang untuk menjadi sebuah demonstrasi teknologi daripada rilis penuh. Awalnya, itu dimaksudkan sebagai sebuah proyek untuk teknologi percobaan baru. Namun, seperti Jigsaw 2.0, server melanggar aturan platform pengujian yang akan lebih kuat dari web server rata-rata, sehingga bermanfaat untuk melihat serius pada fitur-fiturnya, potensi dan penyebaran kemungkinan masa depan.
Jigsaw’s menekankan pengembang menyediakan kode sumber baik-terstruktur, set lengkap inti Application Program Interface (API) dan satu set berkualitas tinggi dokumentasi. Faktor-faktor ini menawarkan platform eksperimental lengkap yang dapat digunakan oleh sebagai peneliti sebanyak mungkin. Hal ini memberikan kontribusi bagi keberhasilan Jigsaw sebagai proyek sumber terbuka memberikan draft berharga untuk masa depan protokol HTTP dan server web berorientasi objek.
Platform yang didukung
Server Jigsaw berjalan pada setiap platform mendukung Java. Ini telah diuji pada Windows 95/NT dan Solaris 2.x. Banyak orang juga melaporkan instalasi sukses dan digunakan pada platform lain seperti OS / 2, MacOS, BeOS, Linux, AS-400 dan AIX. Saya telah menginstal server Jigsaw pada dua workstation didukung oleh Red Hat 6.1, dan 6.2 dengan JDK dan JDK 1.2.2 1.1.8 masing-masing, dan dalam kedua kasus itu bekerja dengan baik

Kelebihan Jigsaw:
  1. Memiliki desain yang berorientasi objek dan implementasi
  2. Jigsaw tidak lebih dari satu set kelas Java dan modul ekstensi,jadi kemampuan untuk menambahkan server tidak rumit 
  3. Jigsaw mendukung CGI untuk digunakan dengan CGI script yang ada.


Kekurangan Jigsaw:
1)      Komunitasnya sedikit jadi sulit untuk mencari solusi jika ada masalah
2)      Tidak gratis

8.      Sun Java System Web Server
Sun Java System Web Serveris yang aman, handal, mudah menggunakan server Web yang dirancang untuk situs menengah dan besar. Tersedia di sistem operasi paling utama, Java System Web Server menyediakan organisasi dengan platform penyebaran tunggal untuk layanan Web, JavaServer Pages (JSP), Java Servlet teknologi, NSAPI dan CGI. Ini juga menawarkan built-in kemampuan reverse-proxy HTTP untuk menyediakan HTTP depan sangat scalable-end untuk server aplikasi atau HTTP server asal. Antarmuka FastCGI menyediakan platform yang stabil dan terukur untuk pihak ketiga teknologi scripting seperti PHP, Ruby on Rails, Perl, Python, dan banyak lagi.
Sun Java System Web Server merupakan perangkat lunak infrastruktur yang canggih yang tersedia tanpa biaya. Jika anda memerlukan dukungan dan ganti rugi, rencana Sun menawarkan dukungan dan lisensi untuk pembelian

Kelebihan Sun Java:
1)      Aman dan mudah dalam penggunaan
2)      Menyediakan organisasi dengan platform penyebaran tunggal untuk layanan Web,JSP,Java Servlet teknologi,NSAPI,dan CGI.
3)      Merupakan perangkat lunak infrastruktur yang canggih
4)      Gratis/Tanpa biaya

Kekurangan Sun Java:
1)      Tidak gratis(web server berbayar)
2)      Keamanan file log mudah ditembus sehingga sistem password pun akan mudah didapatkan.
3)      Komunitasnya sedikit

9.      Zeus Web Server
Zeus Web Server adalah server web proprietary untuk Unix dan Unix-seperti platform (saat SolarisFreeBSDHP-UX dan Linux).Dukungan untuk AIXTru64dan Mac OS X dijatuhkan pada tanggal 10 Juni 2008. zeus tampaknya mati karena belum diperbaruisejak Januari 2010 , dan perusahaan tidak lagi menawarkan solusi server yang sama.
Hal ini dikembangkan oleh Zeus Technologysebuah perusahaan perangkat lunak yang berlokasi di CambridgeInggrisPara penulis asli dan pendiri perusahaan adalah University of Cambridge lulusan Damian Reeves dan Adam Twiss.
Zeus didesain untuk menjadi web server kinerja tinggi dan sering digunakan oleh vendor hardware mengirimkan SPECweb99 tolok ukur untuk hardware mereka.
Selain melayani konten statisZeus mendukung konten dinamis melalui CGIFastCGIApache JServISAPINSAPImod_perl,SSI dan Otentikasi Zeus Terdistribusi dan Konten (ZDAC), sebuah protokol FastCGI seperti proprietarySementara Zeusterutama bersaing dengan  server web komersial lainnya seperti Server Web Sistem Sun Javajuga mengklaim tingkat tinggikompatibilitas dengan Apache HTTP Server (misalnya htaccess danMod_rewrite), dengan harapan bahwa pengguna apacheakan bermigrasi ke Zeus Mempertahankan kehadiran web handal yang berupaya dengan tekanan bisnis saat ini, serta tantangan di masa depan, bukanlah tugas yang mudah. Zeus memahami tantangan dan sejak tahun 1995 telah melayani arsitektur menyebarkan web untuk perusahaan seperti Cable dan Wireless, eBay, NEC BIGLOBE, dan Demon Internet.Zeus Web Server yang paling scalable performa tinggi perangkat lunak server web yang tersedia, solusi bisnis penting fondasi untuk web terkemuka di dunia hosting, penyedia konten dan aman e-commerce perusahaan. Manajemen berbasis web yang fleksibel, kemampuan integrasi aplikasi yang luas, dan kisaran paling komprehensif fitur yang tersedia dari perangkat lunak server komersial, bergabung untuk memberikan solusi berbasis web secara penuh extensible dan masa depan-bukti.

Kelebihan Zeus Web Server:
1)      Manajemen berbasis Web yang fleksibel
2)      Kemampuan integrasi aplikasi yang luas
3)     Dan kisaran paling komprehensif fitur yang tersedia dari perangkat lunak server komersial

Kekurangan Zeus Web Server:
  1. Belum support IPV6
  2. Update versi terbarunya lama keluar
  3. Pemakainya tidak sebanyak Apache atau IIS

10.  Xitami Web Server
Xitami adalah web server untuk beberapa sistem operasi, baik Windows 3.x, Windows 9x, Windows NT, OS/2, Digital OpenVMS, serta UNIX dan variannya.
 Berikut adalah beberapa fitur kunci dari”Xitami” :
>> Server mendukung HTTP/1.0, FTP, CGI/1.1, protokol SSI, peta sisi server gambar, jenis MIME yang ditetapkan pengguna, akar beberapa dokumen, koneksi persistent, pada konfigurasi ulang server-the-fly, pesan kesalahan disesuaikan, multibahasa dokumen HTML dan multibahasa CGI script, HTTP GET, HEAD, PUT, DELETE, PINDAH, dan COPY metode, bisa kustomisasi HTTP header;
·>>Keamanan: otentikasi dasar per direktori, hak akses FTP per user dan per direktori, on-the-fly user dan manajemen password, Unix setuid, membatasi akses dengan alamat IP, CGIS aman, opsi SSL (Xitami / Pro);
>>Logging: CLF, IIS, XML, dan format file log kustom, log file bersepeda diprogram, asynchronous reverse DNS lookups;
>>Virtual host: host multihoming HTTP dan FTP, HTTP/1.1 virtual host, konfigurasi independen penuh (log file, ruang web, hak akses ,…) per host virtual;
>>Konfigurasi: diedit file konfigurasi, atau melalui antarmuka administrasi berbasis web (WBA) yang mencakup wizard virtual host, DNS server (restart, menghentikan), memonitor koneksi aktif, dan konfigurasi penuh dengan pilihan server, keamanan, pengguna, dll;
>> Aplikasi: langsung dukungan untuk skrip CGI di Perl, awk, Rexx, Python, qaza protokol untuk plug-in extensions, protokol SSI untuk halaman web dinamis, ISAPI di Windows, protokol filter untuk filter halaman web sewenang-wenang, LRWP protokol untuk persisten (cepat CGI) aplikasi dalam Perl, C, Python, Java, Java Servlets;
>>Deployment: menginstall siap-to-run, portabel ke Windows, OS / 2, Unix, OpenVMS, situs web sepenuhnya portabel dan aplikasi web;
>>Kinerja: mesin multithreading internal, cepat bahkan pada sistem lebih lambat, footprint kecil, pilihan untuk membatasi koneksi HTTP dan FTP, FTP manajer kuota.

Kelebihan Xitami:
1)      Open source yaitu dapat mengambil file program beserta file sumbernya
2)      Dikeluarkan dalam banyak platform
3)      Cepat dan kuat,hal ini disebabkan karena menggunakan high performance SMT multithreading technology.
4)      Mudah dalam setup dan pengoperasian.
5)      Serta dukungan dokumentasi teknis yang sangat memadai

Kekurangan Xitami:
1)      Web server ini sangat kecil ukurannya ,tidak sampai 1 MB
2)      Komunitasnya tidak sebanyak Apache dan IIS
  

1 comment: