Server Web Jaringan Komputer Lanjut- Imam Suharjo Rev 2.0 2015 FTI Universitas Mercu Buana Yogyakarta fti.mercubuana-yogya.ac.id Blog kuliah.imm.web.id & Blog imam.web.id http://Imam.mercubuana-yogya.ac.id Kuliah Teknologi Open Source Imam Suharjo Rev 2.0 2015 1 Web Server Secara Umum • Web Server (Server web) adalah sebuah perangkat lunak server yang berfungsi menerima permintaan HTTP atau HTTPS dari klien 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, Mozilla Firefox, Opera, NeoPlanet dan program browser lainnya. • Untuk berkomunikasi dengan client-nya (web browser) web server mempunyai protokol sendiri, yaitu HTTP (hypertext transfer protocol). Dengan protokol ini, komunikasi antar web server dengan client-nya dapat saling dimengerti dan lebih mudah. • Contoh dari Web Server diantaranya adalah Personal Web Server (PWS), Xitami, Apache, Microsoft Internet Information Service (IIS) dll. Web server yang terkenal diantaranya adalah Apache dan Microsoft Internet Information Service (IIS). Apache merupakan server web antar-platform, sedangkan IIS hanya dapat beroperasi di sistem operasi Windows. Teknologi Web Server Pengertian dari Wikipedia : • Server web dapat merujuk baik pada perangkat keras ataupun perangkat lunak yang menyediakan layanan akses kepada pengguna melalui protokol komunikasi HTTP atau HTTPS atas berkas-berkas yang terdapat pada suatu situs web dalam layanan ke pengguna dengan menggunakan aplikasi tertentu seperti peramban web. • Penggunaan paling umum server web adalah untuk menempatkan situs web, namun pada prakteknya penggunaannya diperluas sebagai tempat peyimpanan data ataupun untuk menjalankan sejumlah aplikasi kelas bisnis. Kuliah Teknologi Open Source Imam Suharjo Rev 2.0 2015 3 Fungsi • Fungsi utama sebuah server web adalah untuk mentransfer berkas atas permintaan pengguna melalui protokol komunikasi yang telah ditentukan. • Disebabkan sebuah halaman web dapat terdiri atas berkas teks, gambar, video, dan lainnya pemanfaatan server web berfungsi pula untuk mentransfer seluruh aspek pemberkasan dalam sebuah halaman web yang terkait; termasuk di dalamnya teks, gambar, video, atau lainnya. Kuliah Teknologi Open Source Imam Suharjo Rev 2.0 2015 4 Pengguna • Pengguna, biasanya melalui aplikasi pengguna seperti peramban web, meminta layanan atas berkas ataupun halaman web yang terdapat pada sebuah server web, kemudian server sebagai manajer layanan tersebut akan merespon balik dengan mengirimkan halaman dan berkas-berkas pendukung yang dibutuhkan, atau menolak permintaan tersebut jika halaman yang diminta tidak tersedia. • Saat ini umumnya server web telah dilengkapi pula dengan mesin penerjemah bahasa skrip yang memungkinkan server web menyediakan layanan situs web dinamis dengan memanfaatkan pustaka tambahan seperti PHP, ASP. Kuliah Teknologi Open Source Imam Suharjo Rev 2.0 2015 5 Pemanfaatan • Pemanfaatan server web saat ini tidak terbatas hanya untuk publikasi situs web dalam Waring Wera Wanua. • Waring Wera Wanua adalah bahasa terjemahan dari WWW World Wide Web • Pada prakteknya server web banyak pula digunakan dalam perangkat-perangkat keras lain seperti printer, router, kamera web yang menyediakan akses layanan http dalam jaringan lokal yang ditujukan untuk menyediakan perangkat manajemen serta mempermudah peninjauan atas perangkat keras tersebut. Kuliah Teknologi Open Source Imam Suharjo Rev 2.0 2015 6 Pertimbangan Server Hal yang paling utama dalam proses pembuatan web server adalah memilih software mana yang akan digunakan sebagai web server yang akan digunan. Untuk itu perlu adanya pertimbangan sebagai berikut : 1. Lisensi dari software yang akan digunakan (freeware, shareware atau komersial). 2. Kemudahan instalasi. 3. Kemudahan dalam mengatur konfigurasi. 4. Kemudahan untuk menambah atau mengubah peripheralnya. 5. Kemampuan Software. 6. Besar ruang yang dibutuhkan untuk menyimpan file-file minimal yang dibutuhkan agar software dapat berfungsi dengan baik. 7. Prospek software tersebut dimasa yang akan datang. 8. Performasi dan konsumsi sumber daya yang digunakan software itu. 9. Fasilitas apa yang mampu didukung oleh software itu. 10. Dukungan teknis (mempunyai site-site atau milis untuk bertanya bila terjadi masalah). 11. Dukungan platform (jenis sistem operasi apa saja yang dapat menjalankan software tersebut). 12. Dukungan terhadap third party (apakah software ini dapat ditambahkan software tambahan sebagai pelengkap). Cara Kerja Web Server 1. Client disini dapat berupa komputer desktop dengan minimal memiliki browser dangan terhubung ke web server melalui jaringan (intranet atau internet). 2. Komputer yang berfungsi sebagai server, dimana didalamnya terdapat perangkat lunak web server, agar komputer ini dapat diakses oleh client maka komputer harus terhubung ke jaringan (intranet atau internet). 3. Pertama, client (user) akan meminta suatu halaman ke (web) server untuk ditampilkan di komputer client. Misalnya client mengetikkan suatu alamat (biasa disebut URL) di browser http://www.google.com. Client menekan tombol Enter atau klik tombol Go pada browser. Lalu apa yang terjadi? Melalui media jaringan (bisa internet, bisa intranet) dan melalui protokol http, akan dicarilah komputer bernama www.google.com. Jika ditemukan, maka seolah-olah terjadi permintaan, “hai google, ada client yang minta halaman utama nich, ada dimana halamannya?”. Inilah yang disebut request. 4. Sekarang dari sisi server (web server). Mendapat permintaan halaman utama google dari client, si server akan mencari-cari di komputernya halaman sesuai permintaan. Jika ditemukan, maka halaman yang diminta akan dikirimkan ke client (si peminta), namun jika tidak ditemukan, maka server akan memberi pesan “404. Page Not Found”, yang artinya halaman tidak ditemukan. Web server untuk AppNetworking • Misalnya : Access Point outer/ umumnya memiliki fasilitas Webserver (bisa diakses dengan Browser) Kuliah Teknologi Open Source Imam Suharjo Rev 2.0 2015 10 Webserver untuk Website Kuliah Teknologi Open Source Imam Suharjo Rev 2.0 2015 11 Jenis-jenis Web server - 2011 • Server yang paling banyak digunakan di Internet dari survey Netcraft Maret 2011. Teknologi Vendor Jumlah web Persentase Apache Apache 179,720,332 60.31% IIS (Internet Information Services) Microsoft 57,644,692 19.34% nginx Igor Sysoev 22,806,060 7.65% GWS (Google Web Server) Google 15,161,530 5.09% lighttpd lighttpd 1,796,471 0.60% SunOne Sun Microsystems Kuliah Teknologi Open Source Imam Suharjo Rev 2.0 2015 12 Jenis-jenis Web server -2015 Kuliah Teknologi Open Source Imam Suharjo Rev 2.0 2015 13 Cara mengetahui dg netcraft.com • • Jika kita bukan yang punya server, kita masih bisa mengetahui serbuah Website menggunakan Teknologi Server apa, Misal: toolbar.netcraft.com/site_report?url=http://kuliah.imm.web.id (Linux Apache/2.2.11 Ubuntu PHP/5.2.6-3ubuntu4.6 with Suhosin-Patch) Kuliah Teknologi Open Source Imam Suharjo Rev 2.0 2015 14 Apache / Server HTTP Apache Server Web/ WWW Apache • • • Server web yang dapat dijalankan di banyak sistem operasi (Unix, BSD, Linux, Microsoft Windows dan Novell Netware serta platform lainnya) yang berguna untuk melayani dan memfungsikan situs web. Protokol yang digunakan untuk melayani fasilitas web/www ini menggunakan HTTP. Apache memiliki fitur-fitur canggih seperti pesan kesalahan yang dapat dikonfigur, autentikasi berbasis basis data dan lain-lain. Apache juga didukung oleh sejumlah antarmuka pengguna berbasis grafik (GUI) yang memungkinkan penanganan server menjadi mudah. Apache merupakan perangkat lunak sumber terbuka dikembangkan oleh komunitas terbuka yang terdiri dari pengembang-pengembang dibawah naungan Apache Software Foundation. Kuliah Teknologi Open Source 15 Imam Suharjo Rev 2.0 2015 https://id.wikipedia.org/wiki/Apache_HTTP_Server PHP • PHP: Hypertext Preprocessor[1] adalah bahasa skrip yang dapat ditanamkan atau disisipkan ke dalam HTML.[2][3] PHP banyak dipakai untuk memrogram situs web dinamis. PHP dapat digunakan untuk membangun sebuah CMS. • Beberapa kelebihan PHP dari bahasa pemrograman web, antara lain: 1. 2. 3. 4. 5. Bahasa pemrograman PHP adalah sebuah bahasa script yang tidak melakukan sebuah kompilasi dalam penggunaannya. Web Server yang mendukung PHP dapat ditemukan dimana - mana dari mulai apache, IIS, Lighttpd, hingga Xitami dengan konfigurasi yang relatif mudah. Dalam sisi pengembangan lebih mudah, karena banyaknya milis - milis dan developer yang siap membantu dalam pengembangan. Dalam sisi pemahamanan, PHP adalah bahasa scripting yang paling mudah karena memiliki referensi yang banyak. PHP adalah bahasa open source yang dapat digunakan di berbagai mesin (Linux, Unix, Macintosh, Windows) dan dapat dijalankan secara runtime melalui console serta juga dapat menjalankan perintah-perintah system. https://id.wikipedia.org/wiki/PHP & http://php.net Kuliah Teknologi Open Source Imam Suharjo Rev 2.0 2015 16 MySQL • MySQL is the world's most popular open source database. With its proven performance, reliability and ease-of-use, MySQL has become the leading database choice for webbased applications, used by high profile web properties including Facebook, Twitter, YouTube, Yahoo! and many more. • Oracle drives MySQL innovation, delivering new capabilities to power next generation web, cloud, mobile and embedded applications • MySQL, which was originally conceived by the Swedish company MySQL AB, was acquired by Oracle in 2008. Developers can still use MySQL under the GNU General Public License (GPL), but enterprises must obtain a commercial license from Oracle. Kuliah Teknologi Open Source https://www.mysql.com/about/ Imam Suharjo Rev 2.0 2015 http://searchenterpriselinux.techtarget.com/definition/MySQL 17 Contoh Aplikasi : XAMPP Download : http://sourceforge.net/projects/xampp/files/ atau http://www.apachefriends.org/en/xampp-windows.html Kuliah Teknologi Open Source Imam Suharjo Rev 2.0 2015 18 Fitur XAMPP • • • • • • Apache MySQL PHP phpMyAdmin FileZilla FTP Server Tomcat (with mod_proxy_ajp as connector) Kuliah Teknologi Open Source Imam Suharjo Rev 2.0 2015 19 Beberapa Webserver Open Source • • • • • • Apache Nginx Lighttpd Cherokee HTTP Explorer HFS HTTP File Server Kuliah Teknologi Open Source Imam Suharjo Rev 2.0 2015 20 Web Server : Nginx • Nginx (pronounced "engine X") is the second most popular open source web server currently on the Internet. Though development only started in 2002, its currently used by over 6% of web domains. It is a lightweight HTTP server, and can also serve as a reverse proxy and IMAP/POP3 proxy server. It's licensed under a BSD-like license. It runs on UNIX, GNU/Linux, BSD, Mac OS X, Solaris, and Windows. • Nginx was built with performance in mind, in particular to handle ten thousand clients simultaneously. Instead of using threads to handle requests, like traditional servers, Nginx uses an event-driven (asynchronous) architecture. Its more scalable and uses less, and more predictable, amounts of memory. In addition to the basic HTTP features, Nginx also supports name-based and IP-based virtual servers, keep-alive and pipelined connections, and FLV streaming. It can also be reconfigured and upgraded online without interruption of the client processing. Kuliah Teknologi Open Source Imam Suharjo Rev 2.0 2015 21 Web Server : Lighttpd • Lighttpd (pronounced "lighty") is the third most popular open source web server. This lightweight server was initially released in 2003 and currently serves less than 1% of web domains. It's licensed under a revised BSD license and runs on Unix and Linux. • Like nginux, lighttpd is a lightweight server built for performance with a goal of handling ten thousand clients simultaneously. It also uses an event-driven (asynchronous) architecture. Kuliah Teknologi Open Source Imam Suharjo Rev 2.0 2015 22 Server : Cherokee • Cherokee is a full-featured web server with a user friendly configuration GUI, just released in 2010 under the GNU General Public License (GPL). It runs on Linux, Solaris, Mac OS X, and Windows. • Cherokee supports the popular technologies, such as FastCGI, SCGI, PHP, CGI, SSI, and TLS/SSL. It also features virtual host capability, authentication, load balancing, and Apache compatible log files. Plus there are some neat features, such as zero downtime updates where configuration changes can be applied with no restart required and secure downloads with temporal URL generation. Kuliah Teknologi Open Source Imam Suharjo Rev 2.0 2015 23 Server : HTTP Explorer • HTTP Explorer is a web server specially designed to serve files over the HTTP protocol. It was released in 2006 under the GNU General Public License (GPL). Its available for Windows in many different languages as a full installation or binary-only. • This server makes it easy to share your photos, music, videos and other files. Using the server application, you can select folders and files to share. You can define user accounts and permissions. Shared files can be access and viewed via the web interface; no client application is required. Photos are automatically shown with thumbnails and music can be played with the integrated player. Kuliah Teknologi Open Source Imam Suharjo Rev 2.0 2015 24 HFS HTTP File Server • The HFS web server is for serving files, similar to HTTP Explorer but with a simpler web interface. It was released in 2009 under the GNU General Public License (GPL). It's a single executable file that can run on 32bitversions of Windows and in Linux with Wine. • The HFS server lets you and/or your friends easily send, receive, and remotely access files over the web. Files can be downloaded and uploaded to and from the server via the web interface, in addition to using the server application. It's customizable and features a user account authentication, virtual file system, HTML template, bandwidth controls, logs, and a dynamic DNS updater Kuliah Teknologi Open Source Imam Suharjo Rev 2.0 2015 25 Tugas Elearning: 1. Sebutkan contoh Aplikasi (Software) untuk kebutuhan Server/pendukung server, minimal meliputi : nama, pengertian, versi terkini, lisensi dan “yang mengeluarkan”? 2. Menurut anda, Apa yang dibutuhkan untuk membuat sediri web server yang bisa diakses publik (Internet)? 3. Kedepan, Bagaimana kaitan antara penggunaan Web Server dengan IPv6? Dikirimkan melalui web FTI (menu Upload file) di mata Kuliah hingga 18 Oktober 2015. Kuliah Teknologi Open Source Imam Suharjo Rev 2.0 2015 26 Referensi Materi presentasi ini belum cukup, silahkan baca Referensi yang digunakan : • Perbandingan server Web : http://en.wikipedia.org/wiki/Comparison_of_web_ser ver_software • XAMPP http://www.apachefriends.org • Site Report Netcraft : http://toolbar.netcraft.com/ • 6 Excellent Linux/Open Source Web Servers - page 2, http://linuxplanet.com/linuxplanet/reviews/7239/2 • PHP, http://php.net • Mysql, http://mysql.com Kuliah Teknologi Open Source Imam Suharjo Rev 2.0 2015 27