2026-06-25

User Agent Nedir? Tarayıcı ve Sunucu İletişimi Rehberi

User Agent (Kullanıcı Aracısı) nedir? HTTP istek başlıkları, istemci tespiti, bot tanımlama ve modern User-Agent Client Hints teknolojisi kapsamlı rehberi.

web-developmentdevopssecuritytext-processing
  • User Agent, istemcinin işletim sistemi, tarayıcı türü ve sürümü hakkında bilgi taşıyan HTTP istek başlığıdır.
  • Tarihsel uyumluluk nedenleriyle modern tüm tarayıcı dizeleri Mozilla/5.0 ve Safari ifadelerini içerir.
  • Sunucular User Agent bilgisini duyarlı tasarım yönlendirmeleri, analitik ve bot engelleme amacıyla işler.
  • Gizlilik kaygıları nedeniyle W3C ve Google öncülüğünde User-Agent Client Hints (Sec-CH-UA) yapısına geçilmektedir.

HTTP İletişiminde User Agent Kavramı ve Kullanım Amaçları

Bir web kullanıcısı tarayıcı üzerinden herhangi bir internet adresini ziyaret ettiğinde, arka planda HTTP (Hypertext Transfer Protocol) protokolü üzerinden sunucuya bir dizi istek başlığı (request headers) iletilmektedir. Bu istek parametreleri arasında istemcinin donanımsal ve yazılımsal kimliğini belirten en kritik veri User-Agent başlığıdır. RFC 9110 standartlarında detaylıca tanımlanan bu başlık, bağlantıyı başlatan istemci uygulamasının temel sürüm ve mimari bilgilerini sunucu sistemine iletmektedir.

User Agent dizesi sayesinde sunucular gelen isteği gönderen yazılımın türünü tam olarak tespit eder. İstemciler masaüstü web tarayıcıları (Google Chrome, Mozilla Firefox, Apple Safari, Microsoft Edge), mobil uygulamalar, arama motoru tarlama örümcekleri (Googlebot, Bingbot, YandexBot) veya komut satırı veri transfer araçları (curl, wget, Postman) olabilmektedir. Sunucu gelen yazılım türüne göre yanıt içeriğini dinamik olarak optimize edebilir veya güvenlik protokollerini devreye sokabilir.

Web geliştirme süreçlerinde arama motoru indeksleme stratejilerini öğrenmek ve bot erişim kurallarını yapılandırmak için Robots.txt ve sitemap rehberi makalemizi de ayrıntılı biçimde inceleyebilirsiniz.

User Agent Dizesinin (String) Anatomisi ve Geçmiş Tarihsel Kalıntılar

Modern bir masaüstü tarayıcısının sunucuya gönderdiği User Agent dizesi ilk bakışta karmaşık ve anlamlandırması zor görünmektedir. Bunun temel nedeni, 1990'lı yıllardan günümüze aktarılan tarayıcı savaşları döneminden kalan geriye dönük uyumluluk zorunluluklarıdır.

User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36

Bu dize standart olarak 4 temel bileşene ayrılabilir:

  1. Mozilla/5.0 (İstemci Uyum Jetonu): Netscape tarayıcısına özel yazılan eski web sitelerine sorunsuz erişebilmek amacıyla tüm modern tarayıcılar tarafından ortaklaşa kullanılmaya başlanan tarihsel bir uyumluluk ifadesidir.
  2. (Windows NT 10.0; Win64; x64): İstemcinin kullandığı ana işletim sistemini ve işlemci mimarisini (Windows 10/11 64-bit) gösteren detaylı sistem bilgisidir.
  3. AppleWebKit/537.36 (Render Motoru): Tarayıcının HTML, CSS ve JavaScript kodlarını ekranda işleyen WebKit/Blink motoru bileşenidir.
  4. Chrome/124.0.0.0 Safari/537.36: Asıl tarayıcı markası ve sürüm numarasıdır. Chrome tarayıcısı WebKit altyapısını belirttiği için dize sonuna Safari ibaresini eklemektedir.

Mevcut tarayıcınızın dış dünyaya gönderdiği bu teknik bilgiyi detaylı biçimde incelemek ve çözümlemek için sitemizdeki User Agent çözümleyici aracı sayfasını kullanabilirsiniz.

İstemci Tespiti, Sunucu Yanıtları ve Bot Algılama Yöntemleri

Web sunucuları ve backend mimarileri gelen User-Agent başlığını farklı operasyonel amaçlarla aktif olarak işlemektedir. Sunucu tarafı istemci tespiti (user agent parsing) özellikle büyük ölçekli altyapılarda kritik rol oynar.

Duyarlı (Responsive) Tasarım ve Mobil Yönlendirmeler

Gelişmiş CSS medya sorguları (media queries) yaygınlaşmadan önce web sunucuları, mobil cihazları tespit etmek amacıyla User Agent dizesi içindeki Mobile, Android veya iPhone ifadelerini tarayarak kullanıcıları m.example.com gibi özel mobil alt alan adlarına yönlendirmekteydi. Günümüzde bu yaklaşım duyarlı tasarımlarla birleşerek sunucu taraflı optimizasyon sağlayan RWD (Responsive Web Design) mimarilerinde kullanılmaktadır.

Analitik Raporlama ve Güvenlik Filtreleme

Web analitik sistemleri ziyaretçilerin hangi işletim sistemlerini ve tarayıcı sürümlerini tercih ettiğini raporlar. Güvenlik duvarları (WAF) ise curl, python-requests veya bilinen zararlı bot User Agent kalıplarını tespit ederek otomatik erişim engelleri uygulamaktadır. Ayrıca sahte bot tespiti için sunucular IP adreslerini DNS sorgusu ile doğrular.

HTTP istek parametreleri, header yapıları ve karakter dönüşümleriyle ilgileniyorsanız HTTP başlıkları ve URL kodlama rehberi yazımızı inceleyebilirsiniz.

Modern Web Standartlarında User-Agent Client Hints (UA-CH) Dönüşümü

Klasik User Agent başlığının detaylı işletim sistemi, işlemci mimarisi ve cihaz bilgisi içermesi, kullanıcıların rızası olmadan parmak izi yöntemiyle (fingerprinting) takip edilmesine olanak tanımaktadır. Bu gizlilik problemini ortadan kaldırmak amacıyla W3C ve Chromium topluluğu User-Agent Client Hints (Sec-CH-UA) standardını geliştirmiştir.

Client Hints mimarisinde sunucuya varsayılan HTTP isteğinde sadece sınırlı ve genel temel bilgiler iletilmektedir:

Sec-CH-UA: "Chromium";v="124", "Google Chrome";v="124", "Not-A.Brand";v="99"
Sec-CH-UA-Mobile: ?0
Sec-CH-UA-Platform: "Windows"

Eğer sunucu yazılımı cihazın tam modelini veya detaylı işletim sistemi sürümünü öğrenmek isterse, yanıt başlığında Accept-CH ile açık izin talep eder. Bu modern yaklaşım pasif veri toplamayı engeller ve kullanıcı gizliliğini en üst seviyeye çıkarır.

Sıkça Sorulan Sorular

User Agent bilgisi tarayıcı tarafında değiştirilebilir mi?

User Agent bilgisi istemci tarafında oldukça kolay değiştirilebilir. Tarayıcı geliştirici araçları (DevTools), VPN uygulamaları, özel tarayıcı eklentileri veya komut satırındaki curl -A parametresi kullanılarak sunucuya istenen herhangi bir User Agent dizesi iletilebilir.

Tüm modern tarayıcılar neden dizelerinde "Mozilla/5.0" ifadesine yer vermektedir?

1990'lı yıllardaki tarayıcı rekabeti sırasında web siteleri sadece Netscape (Mozilla) istemcilerine özel gelişmiş görsel özellikler sunmaktaydı. Diğer tüm tarayıcılar da web sayfalarının sorunsuz çalışması için dizelerine Mozilla ibaresini eklemiştir ve bu gelenek günümüze kadar ulaşmıştır.

User Agent ile IP adresi arasındaki temel fark nedir?

IP adresi cihazın ağ üzerindeki mantıksal konumunu ve sağlayıcısını temsil ederken, User Agent dizesi cihazın kullandığı yazılım, işletim sistemi ve tarayıcı mimarisi hakkında teknik bilgi sunar.

User-Agent Client Hints (Sec-CH-UA) yapısı nedir?

User-Agent Client Hints, kullanıcı gizliliğini korumak amacıyla klasik User Agent dizesinin yerini alan modern HTTP başlığı standardıdır. Sunucuya sadece ihtiyaç duyduğu verileri aşamalı olarak sunar.

Sunucular zararlı bot yazılımlarını User Agent dizesiyle nasıl tespit eder?

Sunucular bilinen arama motoru botlarının User Agent dizelerini kontrol eder ve IP doğrulaması (reverse DNS) yaparak sahte bot isteklerini ve otomatik güvenlik tarayıcılarını saptayıp engeller.