URL'lerdeki Garip Karakterler Neden Var?
Bazı web sitelerinin adreslerinde karşımıza çıkan ?, # gibi karakterler aslında ne anlama geliyor? Açıkladık...
#$12&!... Muhtemelen fark etmiş olmalısınız; bazı web sayfalarının URL'leri, karikatürlerdeki küfürlü kelimelere benziyor. Peki ama neden?
URL'lerin (uniform resource locator) temel olarak web sitelerinin adresi olduğunu muhtemelen biliyorsunuz. Bu adresler sayesinde belirli haberlere, videolara ve hizmetlere hızla ulaşabiliyoruz. URL'ler, genellikle kolay hatırlanabilir olmayı amaçlıyorlar. Ancak bugünkü web sayfalarının çoğu, aşırı derecede uzun ve anlaşılmaz. Peki bunun sebebi ne; tüm bu karakterler ne anlama geliyor?
URL'nin anatomisi
URL'nin temel yapısına göz atmak, konuyu anlamanıza yardımcı olacak. İlk örnek olarak https://www.chip.com.tr adresini ele alacağız.
Adresteki https:// kısmı, bilgisayarınıza sunucuyla nasıl iletişim kuracağını söyleyen protokolü belirler. Burada HTTPS, bilgisayarınıza web siteleri için düzenlenmiş veri almayı beklemesini söylüyor.
www.chip.com.tr kısmı ise iletişim kuracağınız sunucunun adıdır. Bunu bir sokak adresi veya telefon numarası gibi düşünebilirsiniz.
İnternet'in ilk zamanlarında temel URL bileşenleri yeterliydi; internet birbirine bağlı basit belgelerden oluşuyordu. Ancak web'in ve web sitelerinin yetenekleri geliştikçe URL'ler de gelişti. Kullanıcılar, web'de sayfaları çağırmaktan öte, "dinamik" şeyler yapmak istediler. Böylece URL'ler daha detaylı hale geldi.
Örneğin URL'de gördüğünüz "?" karakterinin sonrasında gelen karakterler, "sorgu parametreleri" olarak adlandırılır. Sunucu, bu ek bilgilere dinamik olarak cevap verebilir ve göreceğiniz sayfayı bu parametrelere göre oluşturabilir. Bu, sayfadaki bir alana otomatik olarak yazılmış bir bilgi veya bir arama motorundaki arama sorgunuz olabilir.
Bu yüzden günümüzün URL'leri uzun ve gereksiz bilgilerle dolu gibi görünüyor.
Google'da örneğin "CHIP Online" şeklinde bir arama yaptığınızda arama metninizdeki boşluğun %20 ile değiştirildiğini göreceksiniz. "Escaping" olarak adlandırılan bu işlem, URL'deki boşluk karakterinin soruna yol açmaması için alternatif bir biçime dönüştürülmesidir. Örneğin + yazdığınızda bu karakter, %3F ile değiştirilir.
URL'de gördüğünüz "eşittir" işaretleri, anahtar-değer çiftlerini temsil eder. Anahtar-değer çiftine bir örnek, sayfa=4 olabilir. Burada "sayfa" anahtar, "4" ise değerdir.
URL'de gördüğünüz her şeyi çözmeniz, her zaman mümkün olmayabilir. Gördüğünüz bilgilerin yalnızca siteye özel olma ihtimali de vardır. Bu bilgiler, herkese açık olarak belgelenmemiş olabilir.
Son olarak # işaretinin sonrasında gelen karakterler, sunucuya gönderilmez - yalnızca web tarayıcınız tarafından kullanılır. Bu işaret, genellikle web tarayıcınıza sayfanın belirli bir bölümüne otomatik olarak kaymasını söyler, ancak farklı amaçlarla da kullanılabilir.
Günümüzün URL sistemi biraz karışık gibi görünse de muhtemelen yakın zamanda değişmeyecek. Ancak Facebook, Twitter gibi sosyal ağlar ve diğer iletişim hizmetleri, URL'leri hatırlama ve elle yazma ihtiyacını çoğu zaman ortadan kaldırdığından bu durum, genellikle bizleri olumsuz etkilemiyor.