HTTP (Hypertext Transfer Protocol) adalah suatu protokol yang digunakan untuk mentransfer dokumen/halaman dalam WWW (World Wide Web). HTTP mendefinisikan bagaimana suatu pesan dapat diformat dan dikirimkan dari client ke server atau sebaliknya. HTTP mengatur aksi apa saja yang harus dilakukan oleh web server dan web browser sebagai respon atas perintah-perintah yang ada pada protokol HTTP ini.
Pengembangan standar HTTP dilaksanakan oleh Konsorsium World Wide Web (World Wide Web Consortium/W3C) dan juga Internet Engineering Task Force (IETF), yang menghasilkan publikasi beberapa dokumen Request for Comments (RFC), antara lain RFC 2616 yang mendefinisikan tentang HTTP/1.1. (dipublikasikan pada bulan Juni 1999).
HTTP merupakan sebuah protokol untuk meminta/menjawab antara klien dan server. Sebuah klien HTTP (seperti web browser atau robot dan lain sebagainya), biasanya memulai permintaan dengan membuat hubungan ke port tertentu di sebuah server Webhosting tertentu (biasanya port 80). Klien yang mengirimkan permintaan HTTP juga dikenal dengan user agent. Server yang meresponsnya, yang menyimpan sumber daya seperti berkas HTML dan gambar, dikenal juga sebagai origin server. Di antara user agent dan juga origin server, bisa saja ada penghubung, seperti halnya proxy, gateway, dan juga tunnel. Sumber yang hendak diakses dengan menggunakan HTTP diidentifikasi dengan menggunakan Uniform Resource Identifier (URI), atau lebih khusus melalui Uniform Resource Locator (URL), menggunakan skema URIhttp:
atauhttps:
.
Bagaimana cara kerja dari HTTP tersebut?
Bila kita mengklik link hypertext atau kita mengetikkan suatu alamat atau URL pada internet browser, maka Anda sedang mentransfer URL ke browser, dan Dari URL ini browser Anda tahu server mana yang akan dihubungi dan file apa yang diminta kemudian web browser akan mengirimkan perintah HTTP ke web server. Web server selanjutnya akan menerima perintah ini dan melakukan aktivitas sesuai dengan perintah yang diminta oleh web browser. Hasil aktivitas tadi akan dikirimkan kembali ke web browser untuk ditampilkan kepada kita.Bagaimana proses transaksi data HTTP?
Selama transaksi http, para pemohon atau yang dikenal sebagai klien, meminta file ke server melalui web browser.Skema normal :
1. Klien terhubung ke host,
2. Server menerima koneksi,
3. Klien permintaan file,
4. Server mengirimkan respon (termasuk file atau tidak).
Contoh permintaan dan penerimaan HTTP
Pertama, Anda ingin http header halaman contoh (halaman ini).Jadi, Anda mengisi alamat URL pada browser yaitu “http://infocarakerja.blogspot.com/2011/07/cara-kerja-http.html” kemudian browser Anda akan tersambung dan mengirimkan:
Penjelasan: browser Anda meminta halaman yang disebut “/2011/03/pengertian-dan-cara-kerja-http/” menggunakan protokol http1.1. Browser Anda menggunakan bahasa Inggris dan Firefox 3.6.15. Browser Anda menginginkan koneksi (socket) tetap terbuka antara Anda dan infocarakerja.blogspot.com, sehingga dapat meminta file lebih lanjut.Connect to 116.199.xxx.xxx on port 80 ... ok GET /2011/07/cara-kerja-http/ HTTP/1.1 Host: www.infocarakerja.blogspot.comConnection: keep-alive User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.15) Gecko/20110303 AlexaToolbar/alxf-2.11 Firefox/3.6.15 GTB7.1 Accept-Encoding: gzip Accept-Charset: ISO-8859-1,UTF-8;q=0.7,*;q=0.7 Cache-Control: no-cache Accept-Language: de,en;q=0.7,en-us;q=0.3
Pertama, web server mengetahui halaman yang Anda inginkan dan bisa mengirimkannya: kode 200. Lalu, Anda memiliki beberapa info lebih lanjut tentang server: Apache di Unix, socket ditutup setelah halaman html, tanggal modifikasi terakhir. Dan akhirnya, file yang diminta.Status: HTTP/1.1 200 OK Date:Wed, 23 Mar 2011 03:01:08 GMT Server:Apache/2.2.13 (Unix) mod_ssl/2.2.13 OpenSSL/0.9.8e-fips-rhel5 mod_auth_passthrough/2.1 mod_bwlimited/1.4 FrontPage/5.0.2.2635 PHP/5.2.10 X-Powered-By:PHP/5.2.10 X-Pingback:http://infocarakerja.blogspot.com/xmlrpc.php Connection:close Transfer-Encoding:chunked Content-Type:text/html; charset=UTF-8 [ISI FILE...]
sumber info
Story by a'an