Langsung ke konten utama

Pembelajaran Konsep Web Server Statis

 


 

Webserver merupakan salah satu kebutuhan yang digunakan oleh user untuk website yang mempunyai kapasitas penyimpanan yang besar dan juga akses yang cepat untuk trafik yang besar dalam mencegah terjadinya down pada suatu website atau aplikasi. Pada artikel kali ini mengajak teman-teman membahas seputar Server / Web server.

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 Server atau Web Server 

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.

 

Bagaimana Skema Connection??

 


Untuk pengembangan aplikasi web, konsentrasi kita adalah bagaimana membuat program server, atau kita istilahkan web server. Bagaimana dengan program client (browser)? Untuk sementara kita memanfaatkan browser yang sudah ada saja, seperti misalnya Google Chrome, Mozilla Firefox, Internet Explorer atau web browser lainnya.

Dari skema diatas, untuk bagian TCP Server bisa kita susun algoritma pemrogramannya seperti yang terlihat pada ilustrasi gambar berikut ini. Untuk keperluan pengembangan aplikasi, tentunya kita belum butuh komputer server yang sesungguhnya. Tetapi dikarenakan aplikasi web server dan client ini butuh IP Address, maka kita bisa menggunakan IP Address localhost atau 127.0.0.1. Sedangkan untuk konfigurasi Port, kita bebas menggunakan port berapapun asalkan port tadi tidak digunakan oleh aplikasi lainnya. Contoh port yang jarang digunakan aplikasi lain adalah port 8080.


RFC 1738 : Uniform Resource Locator (URL)

Agar program client bisa terhubung dengan program server, atau istilahnya adalah membangun koneksi (establish connection), maka perlu ada standar khusus yang mengatur tentang hal itu. Standar yang dimaksud tertuang dalam RFC 1738 yang berisi standar Uniform Resource Locator atau disingkat URL. Dalam penggunaan kesehariannya, biasanya kita mengetikkan URL ini pada address bar pada browser kita.
Adapun aturan penulisan URL menurut RFC 1738 itu, khusus untuk protokol
HTTP adalah seperti berikut ini.
[http|https]://www.[host:port]/path/filename?param-1=data-1&param-n=data-n
Contoh :
● https://www.google.com/index.html
● https://www.facebook.com/index.php?groups=2920223131408328
● https://www.google.com/search?q=rfc+2068&sxsrf=ALeKk00
● http://www.localhost:8080/index.html
● http://www.127.0.0.1/index.html?nama=eko&alamat=banyuwangi

Jika pada penulisan URL port tidak didefinikan, maka otomatis port akan terisi 80. Karena dalam konsensus protokol http, port yang digunakan adalah 80. Hanya untuk keperluan pengembangan aplikasi, kita bisa menggunakan port berapapun asalkan tidak bentrok dengan aplikasi lainnya. Nanti setelah aplikasinya dipasang di server yang sesungguhnya, maka port aplikasi harus dirubah menjadi 80.

 

RFC 2068-Section 5 : Request Message (Pesan Permintaan) 

Setelah program client dan server terhubung, maka langkah pertama
adalah program client mengirimkan pesan (request message) ke program
server. Isi dari pesan permintaan (request message) ini sudah diatur pada
RFC 2068 section 5. Ini saya contohkan isi pesan permintaan.


 

Dari contoh diatas, aturan penulisan isi pesan permintaan (request
message) yang ditetapkan pada RFC 2616 terdapat 2 bagian pokok yaitu :
1. Request-line
2. Request Header Fields

Baris ke 0 yaitu “GET /index.html HTTP/1.1” disebut Request-line. Dimana pada bagian request-line ini terbagi menjadi 3 bagian seperti gambar berikut ini:

 
 
Berikut ini algoritma untuk menangani handle request:
 

 

Response

Setelah server mendapat & menafsirkan pesan permintaan (request message), maka server merespon client menggunakan pesan respons HTTP (HTTP Response Message). Pada dasarnya isi yang berdasarkan response message itu adalah
Response = status-line CRLF header CRLF message body

 

 

Oke, setelah paham mengenai konsep dari respon message, maka kit akan belajar bagaimana menangani respon (handle response) itu tadi.
Berikut ini saya tunjukkan sebuah iluastrasi yang menggambarkan algoritma handle method GET.


 

Setelah memahami penjelasan 3 algoritma diatas, berikut adalah flowchart dari codingan dari web server statis:


Komentar

Postingan populer dari blog ini

Pembelajaran Dasar React Bagi Pemula

  Apa itu Reactjs? Reactjs adalah sebuah library yang dibuat oleh Facebook untuk membuat UI (user interface) pada Web Mobile juga. Banyak orang menyebutnya sebagai framework , namun secara teknis.. Reactjs bukanlah sebuah framework. Melainkan sebuah library untuk membuat UI.   Oke, mari kita coba membuat aplikasi dengan Reactjs pertama kita buat file html biasa dengan nama hello-world.html , di dalam body kita akan menampilkan teks. <! DOCTYPE html > < html > < head > < meta charset = "utf-8" /> < title > Belajar Reactjs </ title > < script src = "https://unpkg.com/react@16/umd/react.production.min.js" >      </ script > < script src = "https://unpkg.com/react-dom@16/umd/react-dom.production      .min.js" ></ script > < script src = "https://unpkg.com/babel-standalone@6.15.0/babel.min.js" >      </ script > </ head > < bod...

Penambahan Function Pop Up Edit Toko di NextJS

      Apa itu Next.js?  Next.js merupakan sebuah React framework yang dibentuk buat mengatasi kasus client-side rendering yang dimiliki React. Sebuah halaman website yang dibentuk memakai React ‘terasa ringan’ lantaran tampilan website sangat interaktif.  Selain itu, ketika data berubah, React menggunakan efisien akan mengupdate bagian menurut halaman website yang memang perlu diupdate tanpa perlu reload satu halaman penuh.  Untuk menerima itu seluruh, client wajib load seluruh file JavaScript sebelum konten halaman ditampilkan. apabila file JS relatif akbar maka ketika yang diperlukan buat load pertama kali pula sebagai lebih lama.  Masalah lain menurut client-side rendering merupakan SEO, terdapat kemungkinan web crawler berusaha mengindex halaman yang belum terselesaikan dirender sepenuhnya (lantaran ketika load yang lama). Dan menduga web tadi blank.  Kedua kasus diatas bisa diselesaikan menggunakan teknik pre-rendering. Yaitu ...

Pembuatan halaman Home dengan NextJS

      Apa itu Next.js?  Next.js merupakan sebuah React framework yang dibentuk buat mengatasi kasus client-side rendering yang dimiliki React. Sebuah halaman website yang dibentuk memakai React ‘terasa ringan’ lantaran tampilan website sangat interaktif.  Selain itu, ketika data berubah, React menggunakan efisien akan mengupdate bagian menurut halaman website yang memang perlu diupdate tanpa perlu reload satu halaman penuh.  Untuk menerima itu seluruh, client wajib load seluruh file JavaScript sebelum konten halaman ditampilkan. apabila file JS relatif akbar maka ketika yang diperlukan buat load pertama kali pula sebagai lebih lama.  Masalah lain menurut client-side rendering merupakan SEO, terdapat kemungkinan web crawler berusaha mengindex halaman yang belum terselesaikan dirender sepenuhnya (lantaran ketika load yang lama). Dan menduga web tadi blank.  Kedua kasus diatas bisa diselesaikan menggunakan teknik pre-rendering. Yaitu ...