Agen pengguna adalah "string" - yaitu, baris teks - mengidentifikasi browser dan sistem operasi ke server web. Ini terdengar sederhana, tetapi agen pengguna telah menjadi berantakan seiring waktu.
Dasar
Ketika browser Anda terhubung ke situs web, itu termasuk bidang User-Agent di header HTTP-nya. Isi bidang agen pengguna bervariasi dari browser ke browser. Setiap browser memiliki agen penggunanya sendiri yang khas. Pada dasarnya, agen pengguna adalah cara bagi browser untuk mengatakan "Hai, saya Mozilla Firefox di Windows" atau "Hai, saya Safari di iPhone" ke server web.
Server web dapat menggunakan informasi ini untuk melayani halaman web yang berbeda ke browser web yang berbeda dan sistem operasi yang berbeda. Misalnya, situs web dapat mengirim laman seluler ke peramban seluler, laman modern ke peramban modern, dan pesan "harap tingkatkan peramban Anda" ke Internet Explorer 6.
Memeriksa Agen Pengguna
Misalnya, agen pengguna Firefox di Windows 7:
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0
Sekarang mari kita lihat agen pengguna Internet Explorer 9, yaitu:
Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)
Kami akan kembali ke hal itu dalam satu menit. Pertama, mari kita periksa agen pengguna Google Chrome juga:
Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.52 Safari/536.5
Obrolan String Agen Pengguna
Mosaic adalah salah satu peramban pertama. String agen penggunanya adalah NCSA_Mosaic / 2.0. Kemudian, Mozilla muncul (kemudian berganti nama menjadi Netscape), dan agen penggunanya adalah Mozilla / 1.0. Mozilla adalah browser yang lebih canggih daripada Mosaic - khususnya, ia mendukung frame. Server web diperiksa untuk melihat bahwa agen pengguna berisi kata Mozilla dan halaman yang dikirim berisi bingkai ke peramban Mozilla. Untuk peramban lain, server web mengirim halaman lama tanpa bingkai.
Akhirnya, Microsoft Internet Explorer datang dan mendukung frame juga. Namun, IE tidak menerima halaman web dengan bingkai, karena server web hanya mengirimnya ke peramban Mozilla. Untuk memperbaiki masalah ini, Microsoft menambahkan kata Mozilla ke agen pengguna mereka dan melemparkan informasi tambahan (kata "kompatibel" dan referensi ke IE.) Server web senang melihat kata Mozilla dan mengirim IE halaman web modern. Browser lain yang datang belakangan melakukan hal yang sama.
Server web tidak terlalu peduli apa string agen pengguna yang sebenarnya - mereka hanya memeriksa untuk melihat apakah itu berisi kata tertentu.
Menggunakan
Server web menggunakan agen pengguna untuk berbagai tujuan, termasuk:
- Melayani halaman web yang berbeda ke browser web yang berbeda. Ini dapat digunakan untuk kebaikan - misalnya, untuk melayani halaman web yang lebih sederhana ke browser yang lebih lama - atau jahat - misalnya, untuk menampilkan pesan "Halaman web ini harus dilihat dalam Internet Explorer".
- Menampilkan konten yang berbeda ke sistem operasi yang berbeda - misalnya, dengan menampilkan halaman yang langsing di perangkat seluler.
- Mengumpulkan statistik yang menunjukkan browser dan sistem operasi yang digunakan oleh pengguna mereka. Jika Anda pernah melihat statistik pangsa pasar browser, inilah cara mereka memperolehnya.
Bot web-crawling juga menggunakan agen pengguna. Misalnya, perayap web Google mengidentifikasi dirinya sebagai:
Googlebot/2.1 (+https://www.google.com/bot.html)
Server web dapat memberikan bot perawatan khusus - misalnya, dengan memungkinkan mereka melalui layar pendaftaran wajib. (Ya, ini berarti Anda terkadang dapat melewati layar pendaftaran dengan menyetel agen pengguna Anda ke Googlebot.)
Server web juga dapat memberikan perintah kepada bot tertentu (atau semua bot) menggunakan file robots.txt. Misalnya server web dapat memberi tahu bot tertentu untuk pergi, atau memberi tahu bot lain untuk hanya mengindeks area tertentu di situs web. Di file robots.txt, bot diidentifikasi oleh string agen pengguna mereka.
Semua browser utama berisi cara untuk mengatur agen pengguna khusus, sehingga Anda dapat melihat apa yang dikirim oleh server web ke berbagai browser. Misalnya, atur browser desktop Anda ke string agen pengguna browser ponsel dan Anda akan melihat versi seluler halaman web di desktop Anda.