Selasa, 11 September 2018

Web Server

  • Pengertian Server atau Web server dan Fungsinya
Server atau Web server adalah sebuah software yang memberikan layanan berbasis data dan berfungsi menerima permintaan dari HTTP atau HTTPS pada klien yang dikenal dan biasanya kita kenal dengan nama web browser (Mozilla Firefox, Google Chrome) dan untuk mengirimkan kembali yang hasilnya dalam bentuk beberapa halaman web dan pada umumnya akan berbentuk dokumen HTML.
Fungsi utama Server atau Web server adalah untuk melakukan atau akan mentransfer berkas permintaan pengguna melalui protokol komunikasi yang telah ditentukan sedemikian rupa. halaman web yang diminta terdiri dari berkas teks, video, gambar, file dan banyak lagi. pemanfaatan web server berfungsi untuk mentransfer seluruh aspek pemberkasan dalam sebuah halaman web termasuk yang di dalam berupa teks, video, gambar dan banyak lagi.
Salah satu contoh dari Web Server adalah Apache. Apache (Apache Web Server – The HTTP Web Server) merupakan web server yang paling banyak dipergunakan di Internet. Program ini pertama kali didesain untuk sistem operasi lingkungan UNIX. Apache mempunyai program pendukung yang cukup banyak. Hal ini memberikan layanan yang cukup lengkap bagi penggunanya.

  • Bagaimana Cara Kerja Web Server?
Lalu bagaimana prinsip atau cara kerja web server itu sendiri? Cukup sederhana untuk dipahami, karena pada dasarnya tugas web server hanya ada 2 (dua), yaitu:
  1. Menerima permintaan (request) dari client, dan
  2. Mengirimkan apa yang diminta oleh client (response).
Secara sederhana dapat digambarkan sebagai berikut:
Webserver 300x155
Penjelasan gambar:
  1. Client disini dapat berupa komputer desktop dengan minimal memiliki browser dan 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). Dalam jaringan internet, komputer ini bisa saja bernama www.google.comwww.bl.ac.id, atau memiliki kode komputer (disebut IP Address) seperti 202.10.20.10 dan 200.100.50.25.
  3. Pertama-tama, 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. Namanya juga mencari, kadang ketemu, kadang juga tidak ketemu. 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.

  • Contoh Aplikasi Web Server

    1. XAMP
    Xamp adalah perangkat lunak bebas, yang mendukung banyak sistem operasi, merupakan kompilasi dari beberapa program.
    Fungsinya adalah sebagai server yang berdiri sendiri (localhost), yang terdiri atas program Apache HTTP Server, MySQL database, dan penerjemah bahasa yang ditulis dengan bahasa pemrograman PHP dan Perl. Nama XAMPP merupakan singkatan dari X (empat sistem operasi apapun), Apache, MySQL, PHP dan Perl. Program ini tersedia dalam GNU General Public License dan bebas, merupakan web server yang mudah digunakan yang dapat melayani tampilan halaman web yang dinamis. Untuk mendapatkanya dapat mendownload langsung dari web resminya.
    1. Apache HTTP Server
    Server HTTP Apache atau Server Web/WWW Apache adalah 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 mengunakan 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.
    1. IIS (Internet Information Services)
    IIS 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.
    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.
    1. Wamp Server
    Wamp Server merupakan sebuah aplikasi yang dapat menjadikan komputer maupun laptop anda menjadi sebuah server atau bisa dikatakan server offline. Kegunaan wamp server ini untuk membuat jaringan local sendiri dalam artian anda dapat membuat website secara offline yang biasanya untuk joomla, wordpress, dll. Wamp server hanya bisa digunakan untuk sistem operasi windows saja, jadi untuk pemakai linux tidak bisa memakai aplikasi ini. Sebenarnya fungsi wamp server ini sama dengan Xampp.
    1. AMPPS
    AMPPS merupakan aplikasi web server ciptaan Softaculous dan bisa digunakan baik sebagai Webserver localhost ataupun di Onlinekan, karena AMPPS sudah mendukung banyak pengaplikasian, control panel yang sudah dapat diakses melalui browser dan sudah terintegrasi dengan segala pengaturan seperti hosting panel dan juga dapat langsung mengatur domain setting dan sebagainya. Softaculous Auto installer juga sudah termasuk disini, meskipun untuk memanfaatkan Auto installer ini diharuskan mempunyai koneksi internet.

  • Pengertian Apache

    Apache adalah sebuah nama web server yang bertanggung jawab pada request-response HTTP dan logging informasi secara detail(kegunaan basicnya). Selain itu, Apache juga diartikan sebagai suatu web server yang kompak, modular, mengikuti standar protokol HTTP, dan tentu saja sangat digemari. Kesimpulan ini bisa didapatkan dari jumlah pengguna yang jauh melebihi para pesaingnya. Sesuai hasil survai yang dilakukan oleh Netcraft, bulan Januari 2005 saja jumlahnya tidak kurang dari 68% pangsa web server yang berjalan di Internet. Ini berarti jika semua web server selain Apache digabung, masih belum bisa mengalahkan jumlah Apache.
    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.
    Saat ini ada dua versi Apache yang bisa dipakai untuk server produksi, yaitu versi mayor 2.0 dan versi mayor 1.3. Apache merupakan webserver yang paling banyak digunakan saat ini. Hal ini disebabkan oleh beberapa sebab, di antaranya adalah karena sifatnya yang opensource dan mudahnya mengkostumisasikannya. diantaranya dengan menambahkan support secure protocol melalui ssl dan konektifitasnya dengan database server melalui bahasa scripting PHP .
    1. Ab (Apache Bookmarking Tool)
    Ab adalah Apache HTTP server benchmarking tool, yang intinya adalah untuk mengukur berapa kecepatan apache dalam menangani sejumlah request per unit waktu. Semakin besar nilainya (request/second) semakin baik. Nilai ini (request/second) bisa di-tuning dengan beberapa cara, misalnya dengan caching, php accelerator (zend, eAccelerator), dan lainnya. Sebuah contoh kasus pada blog yang menggunakan engine wordpress di dalamnya, sebelum menggunakan plugin cache (murni wordpress) bisa mendapat sekitar +/- 40 requests/second. Tapi setelah menambahkan plugin WP-Cache (disarankan:) WP-Super Cache bisa mencapai 400-an requests/second. Berikut link urlnya: http://elliottback.com/wp/why-my-wordpress-site-is-so-much-faster-than-yours/
    2. Alias pada apache
    Alias pada web server berfungsi jika kita ingin menampilkan web yang berada di luar directori default dari apache. Misal sebagai contoh terdapat web duniakamu yg berlokasi di /media/web/. Seharusnya web tersebut diletakkan di /var/www/ akan tetapi pada direktori defaul apache sudah terdapat file lain. Jika direktori duniakamu dimasukkan ke dalam direktori default apache akan menghasilkan kericuhan pada direktori itu. Untuk menghindari kericuhan itu bisa ditambahkan beberapa baris tulisan pada apache.conf tentang alias.
    Alias /duniakamu “/media/web/duniakamu/”
    Options Indexes MultiViews FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
    Setelah ditambahkan save dan restart web servernya sesuai directori dan versi web server, misal /etc/init.d/apache2 restart. Kemudian atur juga permision pada direktori duniakamu, atur agar smua user bisa membaca dan mengeksekusi, misal chmod 775 /media/web/duniakamu.
    3. Masuk ke Directori Apache
    Yang dimaksud dengan Directori Apache adalah direktori atau folder dimana terdapat kumpulan script atau konfigurasi file suatu web ( web yang menggunakan server apache).
    Berikut ini adalah langkah-langkahnya :
    a. Buka google.
    b. pastekan kode di bawah ini di kolom search lalu tekan Enter.
    “Apache/1.3.31 server at” intitle:index of
    Perintah diatas digunakan untuk menyuruh mesin Google untuk menquery alamat website yang menggunakan server Apache versi 1.3.31 terutama index filenya.
    c. buka salah satu alamat situs dari hasil pencarian google tersebut dan anda sudah bisa masuk ke direktori web tersebut.
    4. Cara Menginstall Apache
    Cara menginstall apache bisa melalui console juga bisa melalui module dari webmin.
    Berikut adalah langkah-langkah Menginstall apache dengan module dari webmin.
    Sebelum menginstall pastikan anda sudah login ke webmin anda. Namun jika di server anda sudah ada apache, maka tidak perlu melakukan langkah ini.
    a. Untuk install, masuk ke webmin kemudian klik un-used module.
    b. Maka akan keluar tulisan The Apache Webserver package can be automatically installed by Webmin. Click here to have it downloaded and installed using YUM. Kemudian klik di click here.
    c. Setelah itu apache server siap dikonfigurasi. Jika apache sukses diinstall maka di tab servers akan keluar tulisa apache webserver.
    d. Untuk mengecek apakah instalasi apache anda sudah berhasil atau belum, coba buka IP anda melalui firefox, http://IP_anda/.

  • NGINX
Selain Apache, Nginx juga masuk dalam server HTTP dan Proxy berbasis opensource yang dapat digunakan secara gratis. Tak heran jika banyak website yang juga menggunakannya. Apalagi, server web ini juga sangat mudah dikonfigurasi sehingga memudahkan penggunaannya. Selain Freeware alias gratis, Nginx ini memiliki banyak sekali kelebihan. Beberapa diantaranya adalah mudah di-install, dapat beroperasi pada banyak platform sistem operasi, mudah dikonfigurasi, mampu dikombinasikan sesuai spesifikasi HTTP yang digunakan, memiliki level keamanan cukup lengkap, konsumsi sumberdaya yang tidak boros, efisien dalam memunculkan konten yang sifatnya statik.
Selain dalam penggunaan dan pemilihan web server sendiri, untuk mengoptimalkan penggunaan website perlu adanya server yang handal dibelakangnya. Jika kamu masih belum memilih dan masih berfikir mengenai server, maka tidak ada salahnya menggunakan cloud server. Cloud Server dipilih karena memiliki uptime server yang handal dibangdingkan server tradisional. Jika kamu berminat dengan cloud server yuk kunjungi link berikut : CLOUD SERVER with PURE SSD

  • Konfigurasi HTTP & HTTPS Pada Linux Debian 7

HTTP adalah protokol yang digunakan oleh web server. Semua data yang dikirim menggunakan protokol tersebut tidak terenkripsi (PLAIN Text biasa). Oleh karena itu, perlu kita tambahkan protokol tambahan yang bernama SSL atau TLS. Protokol tersebut berfungsi menambal protokol HTTP, agar menjadi secure (HTTPS). OpenSSL merupakan kepangjangan dari Secure Socket Layer. Terlebih dahulu, pastikan bahwa aplikasi apache2 untuk web server sudah terinstall, jika belum ada, maka install dahulu. Lalu anda harus mengistall paket “ssl-cert” dan “openssl” biasanya paket tersebut sudah ikut terinstall bersaamaan dengan paket apache2 , setelah terinstall anda harus melakukan tiga hal yaitu : 1.meng-import atau men-generate sebuah certificate, 2.enable atau mengaktifkan apache ssl support 3.mengkonfigurasi SSL options
  1. Pertama yaitu men-generate sertifikat dengan perintah #openssl req -new -x509 -days 365 -nodes -out /etc/apache2/apache2.pem -keyout /etc/apache2/apache2.pem
  2. Isi berdasarkan data yang benar. Silahkan lihat gambar
  3. Enable mode ssl dengan perintah #a2enmod ssl
  4. Restart web server dengan #service apache2 restart
  5. Edit file ports.conf yang ada di /etc/apache2/ dengan perintah #nano /etc/apache2/ports.conf . Lihat pada tiga baris terbawah apakah sudah sama dengan gambar
  6. Edit file terakhir dengan #nano /etc/apache2/sites-available/default . Tambahkan konfigurasi pada baris terakhir seperti pada gambar
  7. Restart web server
  8. Coba bka di browser client dengan https://<ip address> atau https://<dns>
  9. Tambahkan pengecualian dan Konfirmasi Pengecualian dan inilah hasilnya.

  • Instal PHP
    PHP merupakan bahasa pemrograman yang paling banyak digunakan untuk membangun aplikasi berbasis web. Kemudahan serta integrasi yang baik dengan berbagai database seperti MySQL menjadikan bahasa pemrograman ini menjadi pilihan bagi banyak orang untuk memulai terjun di dunia pengembangan web.
    Untuk memasang PHP dilinux dapat menggunakan tools apt. Kita juga akan memasang library yang lain agar PHP dapat dengan muda di integrasikan dengan Apache dan MySQL
    $ sudo apt-get install php libapache2-mod-php php-mcrypt php-mysql
    Pada umumnya kita akan melakukan konfigurasi pada apache agar pada saat seseorang melakukan request ke web server yang pertama kali dipanggil adalah file index.php.
    $ sudo nano /etc/apache2/mods-enabled/dir.conf
    Sebelum diubah:
    <IfModule mod_dir.c>
        DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm
    </IfModule>
    Setelah diubah:
    <IfModule mod_dir.c>
        DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm
    </IfModule>
    Ketika selesai tekan Ctrl + X untuk keluar sekaligus menyimpan file, anda akan diminta untuk menekan Y dan Enter.
    Setelah semua selesai, kita butuh untuk melakukan restart terhadap serviceApache.
    $ systemctl restart apache2
    PHP memiliki banyak module yang dapat digunakan untuk meningkatkan fungsionalitas dari PHP itu sendiri. untuk memasangnya dapat dilakukan dengan cara ini.
    Untuk melihat module yang tersedia.
    $ apt-cache search php- | less
    libnet-libidn-perl - Perl bindings for GNU Libidn
    php-all-dev - package depending on all supported PHP development packages
    php-cgi - server-side, HTML-embedded scripting language (CGI binary) (default)
    php-cli - command-line interpreter for the PHP scripting language (default)
    php-common - Common files for PHP packages
    php-curl - CURL module for PHP [default]
    php-dev - Files for PHP module development (default)
    php-gd - GD module for PHP [default]
    php-gmp - GMP module for PHP [default]
    php-ldap - LDAP module for PHP [default]
    php-mysql - MySQL module for PHP [default]
    php-odbc - ODBC module for PHP [default]
    ...
    Tekan 'q' untuk keluar.
    Untuk melihat deskripsi module.
    $ apt-cache show module_name
    Untuk memasang module.
    $ sudo apt-get install module_name
    Jika semua konfigurasi telah dilakukan, kita dapat melakukan pengetesan terhadap PHP dengan mengaksesnya melalui web server.
    Kita butuh untuk membuat file info.php pada folder /var/www/html.
    $ sudo nano /var/www/html/info.php
    Isi file info.php
    <?php
    phpinfo();
    ?>
    Simpan dengan menekan Ctrl + X, kemudian tekan Y dan Enter.
    Sekarang kita akan menguji apakah web server dan PHP yang kita konfigurasi sudah benar dengan mengunjungi URL alamat berikut.
    http://localhost/info.php
    Jika semuanya benar maka halaman yang akan tampil akan seperti ini.


Apabila kurang jelas, kalian bisa menonton video di bawah ini :


  • Install Dan Konfigurasi Web Server Di Debian 7

    Web Server digunakan sebagai tempat kita meletakkan file-file web (html, php, dll) agar dapat diakses menggunakan web browser.

    Sebelum melakukan konfigurasi WEB SERVER  pastikan IP Address dan DNS sudah di Konfigurasi, jika belum anda bisa melihat langkah-langkah konfigurasi ip address di debian  dan langkah-langkah installasi dan konfigurasi dns server di debian .

    Install dan Konfigurasi Web Server

    1 .Install apache2
    root@rofiq:~# apt-get install apache2

    2. Setelah menginstall apache2, selanjutnya kita akan membuat virtualhost untuk domain kita. Pertama masuk dahulu ke direktori konfigurasinya.

    root@rofiq:~# cd /etc/apache2/sites-available 

    3. Lalu kita copy default konfigurasinya agar kita tidak usah repot-repot mengetik konfigurasinya. Serta kita sesuaikan konfigurasinya.

    root@rofiq:/etc/apache2/sites-available#  cp default rofiq

    4. Setelah selesai kita copy kita buka file konfigurasi tadi dengan menggunakan perintah " nano rofiq ", selanjutnya tekan enter untuk melanjutkan.

    root@rofiq:/etc/apache2/sites-available# nano rofiq

    5. Kemudian tambahkan konfigurasi seperti yang ada didalam kolom gambar di bawah ini . kemudian simpan konfigurasi anda " Ctrl+x kemudian Y kemudian Enter " .

    6. Selanjutnya kita akan mendisablekan file default dengan menggunakan perintah  " a2dissite default " untuk mendisble file default , kemudian tekan enter jika sudah .

    7. Setelah mendisablekan file default kemudian kita aktifkan file rofiq. dengan menggunakan perintah " a2esite rofiq ' kemudian tekan enter untuk melanjutkannya.

    8. Setelah kita mengaktifkan virtualHost selanjutnya kita buat direktori dan fie di direktori /var/www ( sesuaikan DocumentRoot )

    root@rofiq:~# cd /var/www
    root@rofiq:/var/www# mkdir rofiq
    root@rofiq:/var/www# cp index.html rofiq/
    root@rofiq:/var/www# cd rofiq

    9. lalu kita edit index.html agar tampilan sesuai keinginan kita.

    root@rofiq:/var/www/rofiq# nano index.html

    10. Setelah selesai , Jangan lupa untuk merestart apache2 dengan menggunakan perintah 
    " service apache2 restart  " atau bisa menggunakan perintah " /etc/init.d/apache2 restart "

    root@rofiq:/var/www/rofiq# service apache2 restart

    11. Lalu coba kita buka domain kita dengan menggunakan perintah " w3m rofiq.net " atau bisa menggunakan perintah " www-browser rofiq.net ". ( jika sudah berhasil maka tampilan konfigurasi web tadi akan muncul di web )

    root@rofiq:/var/www/rofiq# w3m rofiq.net

Apabila kurang paham bisa liat video di bawah ini :

Sekian, terimakasih.


Sumber :
  1. https://idcloudhost.com/pengertian-web-server-dan-fungsinya/
  2. http://achmatim.net/2008/07/09/prinsip-dan-cara-kerja-web-server/
  3. https://ziozioo.wordpress.com/tag/contoh-aplikasi-web-server/
  4. https://duniakamu.wordpress.com/2010/02/22/pengertian-apache/
  5. https://www.daiserver.com/blog/pengertian-nginx-web-server/
  6. http://bintangprtm7.blogspot.com/2015/03/securing-web-server-https-di-debian-7.html
  7. https://medium.com/hammercode/cara-install-apache-mysql-php-phpmyadmin-di-linux-e6ba341ec14a
  8. https://blogger-mycomputer.blogspot.com/2015/04/install-dan-konfigurasi-web-server-di.html

Tidak ada komentar:

Posting Komentar