- WEB SERVER -
Apa itu Web Server?
Web Server merupakan salah satu layanan Internet yang mampu melayani koneksi transfer data dalam protocol HTTP ( Hypertext Transfer Protocol ). Web server saat ini merupakan inti dari server – server di internet selain FTP, Mail Server dan lainnya. Web Server saat ini telah dirancang untuk dapat melayani beragam jenis data, mulai dari Teks, Gambar, Suara, Video dan lain sebagainya. Web Server pada umumnya melayani data dalam bentuk HTML ( Hypertext Markup Language ). Dari file HTML ini kemudian dapat dikaitkan ke file HTML lainnya, ke file gambar dan file yang lainnya.
Sebenarnya, tanpa menggunakan Web server pun kita sudah dapat menjalankan file HTML, hanya saja file HTML tersebut hanya dapat di lihat di komputer kita sendiri. Maka dari itu kita membutuhkan suatu Aplikasi Server yang dapat membagikan atau mempublikasikan file – file HTML ( Web ) kita agar komputer lain dapat melihat file HTML ( Web ) kita. Tapi itu semuanya masih merupakan Aplikasi Web Statis, artinya informasi yang berada di Web kita hanya bersifat statis alias tidak dapat berubah – ubah dan tidak dapat berinteraksi dengan user yang membuka Web kita. Untuk itu di Aplikasi Server kita harus di Install juga Aplikasi Server Side dan juga Database Server. Dengan adanya Web Server yang sudah lengkap dengan Aplikasi Server side serta Database server, Aplikasi Web kita akan dapat berinteraksi dengan pengunjung sehingga Aplikasi Web kita akan terkesan lebih Dinamis.
Terdapat beberapa aplikasi Web Server yang semuanya mempunyao kelebihan dan kekurangan masing-masing. Berikut ini merupakan aplikasi-aplikasi web server :
1. Apache Web Server – The HTTP Web Server
2. Apache Tomcat
3. Microsoft windows Server 2003 Internet Information Services (IIS)
4. Lighttpd
5. Nginx
6. Jigsaw
7. Sun Java System Web Server
8. Xitami Web Server
9. Zeus Web Server
Dari Kedelapan apliaksi web server tersebut, yang paling banyak di gunakan sebagai web server adalah IIS (Internet Informatios Services) dan Apache
Pada Artikel kali ini hanya akan di bahas 5 dari 9 aplikasi webserver, yaitu Apache web server, Apache Tomcat, IIS, Lighttpd, dan Nginx :
1. Apache Web Server - the HTTP Web Server
Apache ini dibuat versi pertamanya oleh Robert Mc Cool — yang terlibat di NCSA– padatahun 1996. Ditulis dalam bahasa C, perkembangannya dilakukan bersama rekan-rekan melalui email. Dia mengerjakan proyek itu bersama Apache groupnya : Brian Behlendorf, Roy T. Fielding, Rob Hartill, David Robinson, Cliff Skolnick, Randy Terbush, Robert S. Thau, Andrew Wilson, Eric Hagberg, Frank Peters and Nicolas Pioch.
Kenapa diberi nama Apache? Kata yang mendirikan karena pertama mereka ingin menghargai penduduk asli Amerika Indian Apache yang dikenal ketahanan dan skilnya saat perang, dan kedua karena akar proyek si apche ini merupakan sebuah ‘a patchy server’. Alasan kedua sebenarnya dengan hoki ditemukan. Apache dikembangkan oleh komunitas terbuka yang di bawahi oleh Apache Software Foundation. Aplikasinya dapat digunakan untuk OS yang beragam( tidak bergantung pada vendor tertentu (cross platform)), sebut saja UNIX, FreeBSD, Linux, Novell netware, MacOS X, Windows.
Web server Apache mempunyai kelebihan dari beberapa pertimbangan di atas :
1. Apache termasuk dalam kategori freeware.
2. Apache mudah sekali proses instalasinya jika dibanding web server lainnya seperti NCSA, IIS, dan lain-lain.
3. Mampu beroperasi pada berbagai paltform sistem operasi.
4. Mudah mengatur konfigurasinya. Apache mempunyai hanya empat file konfigurasi.
5. Mudah dalam menambahkan peripheral lainnya ke dalam platform web servernya.
Fasilitas atau ciri khas dari web server Apache adalah :
1. Dapat dijadikan pengganti bagi NCSA web server.
2. Perbaikan terhadap kerusakan dan error pada NCSA 1.3 dan 1.4.
3. Apache merespon web client sangat cepat jauh melebihi NCSA.
4. Mampu di kopilasi sesuai dengan spesifikasi HTTP yang sekarang.
5. Apache menyediakan feature untuk multihomed dan virtual server.
6. Kita dapat menetapkan respon error yang akan dikirim web server dengan menggunkan file atau skrip.
7. Server apache dapat otomatis berkomunikasi dengan client browsernya untuk menampilkan tampilan terbaik pada client browsernya. Misalnya, browser ingin menampilkan dalam bahasa spanyol, maka web server apache otomatis mencari dalam servicenya halaman-halaman dengan bahasa spanyol.
8. Web server Apache secara otomatis menjalankan file index.html, halaman utamanya, untuk ditampilkan secara otomatis pada clientnya.
9. Web server Apache mempunyai level-level pengamanan.
10. Apache mempunyai komponen dasar terbanyak di antara web server lain.
11. Ditinjau dari segi sejarah perkembangan dan prospeknya, Apache web server mempunyai prospek yang cerah. Apache berasal dari web server NCSA yang kemudian dikembangkan karena NCSA masih mempunyai kekurangan di bidang kompatibilitasnya dengan sistim operasi lain. Sampai saat ini, web server Apache terus dikembangkan oleh tim dari apache.org.
12. Performasi dan konsumsi sumber daya dari web server Apache tidak terlalu banyak, hanya sekitar 20 MB untuk file-file dasarnya dan setiap daemonnya hanya memerlukan sekitar 950 KB memory per child.
13. Mendukung transaksi yang aman (secure transaction) menggunakan SSL (secure socket layer)
14. Mempunyai dukungan teknis melalui web.
15. mempunyai kompatibilitas platform yang tinggi.
16. mendukung third party berupa modul-modul tambahan.
Kekuranga Apache :
Setelah anda mengetahui beberapa kelebihan dari Apache, maka kali ini saya akan menjelaskan tentang beberapa kekurangan dari Apache, beberapa kekurangan dari Apache adalah :
1. 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.
2. Apache tidak memproses karakter kutip dalam string Referrer dan User-Agent yang dikirimkan oleh Client. Ini berarti Client dapat memformulasi inputnya secara hati-hati untuk merusak format baris log akses
3. Terganggunya proses upload data, yang bisa menyebabkan software salah dalam menerjemahkan ukuran data yang masuk. Dengan celah tersebut, hacker dikabarkan dapat mengeksploitasi kerentanan dengan cara mengirimkan request pada server Apache bersangkutan. Versi yang cacat tersebut adalah seluruh generasi Apache 1.3 dan versi 2 hingga 2.0.36. Server yang diserang hacker memanfaatkan kelemahan ini akan mengalami DoS, alias server itu tak bisa diakses. Dalam sejumlah kasus, penyerangnya dapat menjalankan pilihan kodenya.
Apache ini merupakan aplikasi yang banyak digunakan saat ini, selain dapat berjalan di banyak Sistem Operasi seperti windows, linux dan lainnya, Apache Juga Bersifat Open Source, Secara default Apache Menggunakan Script PHP dengan MySQL sebagai Database nya dan semua itu juga di gunakan secara gratis.
Beberapa Aplikasi Apache untuk Windows Adalah Sebagai Berikut :
• Apache2triad
• XAMPP
• WAMPP
• AppServ
• Dan masih banyak lagi yang lainnya.
Untuk di linux juga terdapat banyak aplikasi Apache serta aplikasi pendukung untuk membangun web server kita, seperti berikut ini :
• LAMPP
• XAMPP
• Atau kita bisa juga menginstall satu persatu seperti apache ( httpd ), PHP dan mysql melalui Source code yang dapat di download di Internet secara Gratis.
2. APACHE TOMCAT
Apache tomcat adalah server web berbasis opensource 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. Apa itu JNDI??
Java Naming and Directory Interface (JNDI) adalah sebuah API yang mendeskripsikan library Java yang standar untuk mengakses layanan naming dan directory seperti Domain Naming Service (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.
Kelebihan dan Kekurangan Apache Tomcat: Kelebihan Apache Tomcat:
1. Performanya yang tinggi, stabil, memiliki banyak fitur
2. Mudah dikonfigurasi
3. Menggunakan hanya sedikit sumberdaya pada server
4. Tidak bergantung kepada thread untuk melayani klien
Kekurangan Apache Tomcat:
1. Belum support IPV6
2. Update/patchnya versi terbarunya lama keluar
3. Fast-CGInya tidak berfungsi maximal
4. 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 fondasi dari platform Internet dan Intranet Microsoft, yang mencakup Microsoft Site Server, Microsoft Commercial Internet System dan produk-produk 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).
Versi IIS
IIS tersedia dalam beberapa versi dan sistem operasi sebagai berikut:
• IIS 1.0 untuk Windows NT 3.51, yang tersedia sebagai tambahan yang gratis.
• IIS 2.0 untuk Windows NT 4.0
• IIS 3.0 untuk Windows NT 4.0 Service Pack 3
• IIS 4.0 untuk Windows NT 4.0 Option Pack
• IIS 5.0 untuk Windows 2000 (Professional dan Server)
• IIS 5.1 untuk Windows XP Professional dan Windows XP Media Center Edition
• IIS 6.0 untuk Windows Server 2003 dan Windows XP Professional x64 Edition
• IIS 7.0 untuk Windows Server 2008 dan Windows Vista (Edisi Business, Edisi Enterprise, dan Ultimate)
• IIS 7.5 untuk Windows Server 2008 R2 (Beta) dan Windows 7 (Beta)
Komponen pendukung IIS antara lain :
1. Protocol jaringan TCP/IP.
2. Domain Name System (DNS).
3. Direkomendasikan untuk menggunakan format NTFS demi keamanan.
4. Software untuk membuat situs web, salah satunya Microsoft FrontPage.
Pada pembahasan Internet Information Service ini, yang banyak dibahas adalah Internet Information Service yang terdapat pada Windows 2000 Server dan hanya terbatas pada Files Transfer Protocol (FTP) dan web saja.
Fitur-Fitur IIS :
1. 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.
2. IIS mendukung protocol HTTP, FTP, SMTP, NNTP dan SSL
3. IIS mengizinkan aplikasi web untuk dijalankan sebagai proses yang terisolasi dalam ruangan memori terpisah untuk mencegah satu aplikasi membuat crash aplikasi lain.
4. IIS dapat diatur dengan Microsoft Management Console atau menggunakan skrip Windows Scripting Host.
5. IIS mendukung bandwidth throttling yang dapat mencegah sebuah situs web memonopoli bandwidth yang tersedia.
6. IIS memiliki fitur URL Filtering untuk mem-filter website yang tidak diinginkan
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, Output-Compression, URL-Rewriting dan lain-lain. Secara lengkap, fitur-fitur yang disediakan oleh lighttpd adalah sebagai berikut:
1. Load-balancing FastCGI, SCGI, dan HTTP proxy support
2. chroot support
3. web server berbasis select()-/poll()-/epoll()
4. Support untuk skema notifikasi event yang lebih efisien seperti kqueue dan epoll
5. Conditional rewrites (mod_rewrite)
6. SSL dan TLS support, via OpenSSL.
7. Otentikasi terhadap sebuah server LDAP
8. Statistik RRDtool
9. Rule-based downloading dengan kemungkinan penanganan sebuah script hanya otentikasi
10. Server Side Includes support
11. Virtual hosting yang fleksibel
12. Modules support
13. Cache Meta Language (saat ini sedang diganti mod_magnet) menggunakan bahasa pemrograman Lua
14. Minimal WebDAV support
15. Servlet (AJP) support (pada versi 1.5.x ke atas)
16. HTTP compression menggunnakan mod_compress dan mod_deflate terbaru (1.5.x)
17. Berukuran kecil (kurang dari 1 MB)
18. Desain single-process hanya dengan beberapa thread. Tidak ada proses atau thread dimulai per koneksi.
Dengan semua fitur dan kelebihannya, lighttpd sangat cocok digunakan untuk aplikasi-aplikasi web yang termasuk kategori Web 2.0. Beberapa situs-situs Web 2.0 populer yang menggunakan lighttpd antara lain YouTube (http://youtube.com), wikipedia (http://wikipedia.org), dan meebo (http://meebo.com).
Kelebihan dan Kekurangan Lighttpd: Kelebihan Lighttpd:
1. Performanya yang tinggi, stabil, memiliki banyak fitur
2. Mudah dikonfigurasi
3. Menggunakan hanya sedikit sumberdaya pada server
4. Tidak bergantung kepada thread untuk melayani klien
Kekurangan Lighttpd:
1. Belum support IPV6
2. Update/patchnya versi terbarunya lama keluar
3. Fast-CGInya tidak berfungsi maximal
4. Pemakainya tidak sebanyak Apache atau IIS (komunitasnya tidak sebanyak Apache atau IIS)
5. WEB SERVER NGINX
Nginx dengan cepat memberikan konten statis dengan penggunaan efisien sumber daya sistem. Hal ini dapat menyebarkan dinamis HTTP konten di jaringan menggunakan FastCGI handler untuk script, dan dapat berfungsi sebagai perangkat lunak yang sangat mampu penyeimbang beban.
Nginx dibangun secara modular dan dengan demikian mampu mendukung berbagai fitur seperti Load Balancing dan Reverse Proxying, Virtual hosts berbasis nama dan IP, FastCGI, akses langsung ke Memcached Cache, SSL, Flash Video Streaming dan sejumlah fitur-fitur standar lainnya. Nginx dapat dijalankan dan tersedia untuk platform Unix, Linux, varian dari BSD, Mac OS X, Solaris, dan Microsoft Windows.
Nginx menjadi pilihan berkat kinerjanya yang tinggi, stabilitas, kekayaan akan fitur, mudah dikonfigurasi dan terutama hemat sumber daya. Berbeda dengan server tradisional, Nginx tidak sepenuhnya bergantung pada ‘threads„ untuk menangani permintaan (requests). Sebagai pengganti Nginx menggunakan teknik arsitektur yang digerakkan berdasarkan event yang lebih skalabel (scalable asynchronous event-driven architecture). Arsitektur ini ternyata pada saat dibebani hanya memerlukan sedikit memori dan menurut pengembangnya dalam jumlah yang bisa diprediksikan.
Awalnya Nginx dibangun di Rusia untuk memenuhi kebutuhan mesin pencari skala besar Rambler yang tetap memanfaatkannya sampai sekarang. Berkat berbagai kemampuan yang dimilikinya, termasuk kinerja yang tinggi dan fleksibilitas dalam komfigurasi, nginx banyak digunakan untuk mendukung layanan web skala besar seperti WordPress.com, GitHub, SourceForge, ComputerBase, FastMail, Hulu dan lainnya.
Nginx menggunakan asynchronous-event pendekatan untuk menangani permintaan yang diprediksi memberikan kinerja yang lebih bawah beban, kontras dengan Apache HTTP server model yang menggunakan berulir atau proses yang berorientasi pada pendekatan-permintaan penanganan.
Fitur
Handling of static files, index files, and auto-indexing
- Reverse proxy with caching
- Load balancing
- Fault tolerance
- SSL support
- FastCGI support with caching
- Name- and IP-based virtual servers
- FLV streaming
- MP4 streaming, using the MP4 streaming module
- Web page access authentication
- gzip compression
- Ability to handle more than 10000 simultaneous connections
- URL rewriting
- Custom logging
- Server-side includes
Fitur Mail proxy:
1. SMTP, POP3, and IMAP proxy
2. STARTTLS support
3. SSL support
Kelebihan dan Kekurangan Nginx: Kelebihan Nginx:
1. Performanya yang tinggi, stabil, memiliki banyak fitur
2. Mudah dikonfigurasi
3. Menggunakan hanya sedikit sumberdaya pada server
4. Tidak bergantung kepada thread untuk melayani klien
Kekurangan Nginx:
1. Belum support IPV6
2. Update/patchnya versi terbarunya lama keluar
3. Fast-CGInya tidak berfungsi maximal
4. Pemakainya tidak sebanyak Apache atau IIS (komunitasnya tidak sebanyak Apache atau IIS)
Berikut ini merupakan Tabel Perbandingan Web Server
Itulah Perbandingan Dari Aplikasi-aplikasi web server, pada Artikel Selanjutnya Saya Akan Menjelaskan Bagaimana cara Instalasi Aplikasi Tersebut Pada Sistem Operasi Baik itu Windows Ataupun Linux
kalo menurut bapak web server mana yg terbaik ? bapak menggunakan yang mana ? saya pake apache2triad pak.
BalasHapusMakasih kak hadi, bermanfaat banget postinganya, susah-susah nyari akhirnya nemu yang lenggkapnya di blog kakak
BalasHapus@nabila zakira, saya senang kalau ternyata artikel ini bermanfaat. :D
BalasHapussiap min
BalasHapusmesin pemisah lcd