URI ve URL terimleri sıklıkla birbirinin yerine kullanılır, ancak aslında farklı anlamlara sahiptirler. İkisi arasındaki farkı anlamak web sayfaları, resimler, elektronik belgeler ve diğer çevrimiçi kaynaklarla çalışan herkes için önemlidir.
Bu yüzden bugünkü yazımızda, URI ve URL arasındaki farkları detaylıca inceleyeceğiz.
URL Nedir?
URL (Uniform Resource Locator), internet üzerindeki kaynaklara erişim için özel bir tanımlayıcı türü olarak hizmet eder. Kullanıcıları ve sistemleri bir web sayfası, dosya veya resim gibi belirli bir kaynağa yönlendiren bir referans noktasıdır. URL’ler web navigasyonunun ayrılmaz bir parçasıdır ve tarayıcıların web’den içerik almasını ve görüntülemesini sağlar.
URL’nin Bileşenleri
URL’ler, her biri farklı bir amaca hizmet eden çeşitli bileşenlerden oluşur:
1. Şema
Genellikle protokol (örn. http, https) olarak bilinen bu kısım, kaynağa nasıl erişilmesi gerektiğini belirtir.
Yaygın şemalar arasında Köprü Metni Aktarım Protokolü için http://, güvenli HTTP için https://, Dosya Aktarım Protokolü için ftp://, e-posta için mailto:// ve yerel dosya erişimi için file:// bulunur.
2. Alan Adı
Kaynağın barındırıldığı belirli web sitesini veya sunucuyu tanımlar. Benzersiz bir IP adresiyle eşleşen, insan tarafından okunabilir bir ad sağlar. Alan adından önce genellikle şema ve ardından .com, .org gibi üst düzey alan adı (TLD) veya Türkiye için .tr gibi ülkeye özgü TLD’ler gelir.
3. Port
Port numarası, belirtilmişse, sunucudaki iletişim uç noktasını belirler. İsteğin sunucu üzerinde çalışan uygun hizmete yönlendirilmesine yardımcı olur. Herhangi bir bağlantı noktası belirtilmezse, şema için varsayılan bağlantı noktası kullanılır (örneğin, HTTP için 80, HTTPS için 443).
4. Yol
Yol, bir dosyanın veya kaynağın sunucudaki belirli konumunu ifade eder. İstenen kaynağa giden dizinleri ve alt dizinleri tanımlar. Yol tipik olarak ileri eğik çizgilerle (/) ayrılır.
5. Sorgu Dizesi
Sorgu bileşeni sunucuya ek parametrelerin iletilmesini sağlar. Soru işareti ? ile başlar ve ve işareti (&) ile ayrılmış anahtar-değer çiftlerinden oluşur. Sunucu, dinamik içerik oluşturmak veya belirli eylemleri gerçekleştirmek için bu parametreleri yorumlayabilir.
6. Parça
Parça tanımlayıcı olarak da bilinen bir bağlantı, bir web sayfası içinde belirli bir konuma gitmek için kullanılır. Anchor adının ardından gelen # hash sembolü ile gösterilir. URL’ye erişildiğinde, tarayıcı web sayfası içinde belirtilen bağlantıya kaydırır.
URL, bir URI (Uniform Resource Identifier) türüdür. İnternet üzerindeki bir kaynağın tam adresini veya konumunu sağlayan belirli bir URI alt türüdür.
URI Nedir?
URI (Uniform Resource Identifier), internette bir belge, görüntü veya başka herhangi bir öğe gibi bir kaynağı (veya her ikisini) tanımlamak ve bulmak için kullanılan bir karakter dizisidir. Bir URI benzersiz bir tanımlayıcı olarak hizmet eder ve adresleme ve erişim için standart bir format sağlar.
URL’nin aksine, URI bir isim, konum veya her ikisi de olabilir ve genellikle XML, etiket kütüphanesi dosyaları ve JSTL ve XSTL gibi diğer dosyalarda kullanılır. URL ise temel olarak internette web sayfalarını aramak içindir.
URI’ler, kaynak ve ona nasıl erişileceği hakkında belirli bilgiler sağlayan çeşitli bileşenlerden oluşur. Bunların bir araya getirilmesiyle bir URI, internet üzerindeki kaynakları tanımlamak ve bunlara erişmek için bir yol sağlar ve istemcilerin belirtilen protokol ve konum bilgilerini kullanarak istenen içeriği almasına olanak tanır.
Bir URI’nin genel sözdizimi şöyledir:
scheme:[//authority]path[?query][#fragment]
Bir URI’nin üç ana bileşeni Şema, Yetki ve Yol’dur.
1. Şema
Kaynağa erişmek için kullanılan protokol veya mekanizmayı belirten URI’nin ilk kısmıdır. Bir protokol, bir spesifikasyon veya HTTP, dosya veya veri gibi bir tanımlama olabilir.
2. Otorite
Ana bilgisayar (alan adı, IP adresi), kullanıcı bilgisi (; ile ayrılmış) ve bağlantı noktası numarası gibi konum bilgilerini sağlayan isteğe bağlı bir bileşendir. Her zaman gerekli değildir ve varlığı kullanılan belirli URI şemasına bağlıdır.
Mailto veya tel gibi bazı URI şemaları için yetki bileşeni gerekli değildir. Bu şemalar genellikle kaynakları yetkililerle tanımlamak yerine belirli eylemler veya hizmetler sağlamaya odaklanır.
Bir URL’deki yetki bileşeni, alan adı (kaynağın kayıtlı adı) ve isteğe bağlı olarak bağlantı noktası numarasından oluşur.
3. Yol
Sunucu üzerindeki kaynağın belirli konumunu veya yolunu temsil eder.
4. Sorgu
Dinamik içerik veya eylemler için sunucuya parametre aktarılmasına olanak tanıyan isteğe bağlı bileşenlerdir.
5. Fragment
Başvurulan kaynak içindeki belirli bir bölümü veya parçayı tanımlamak için kullanılan isteğe bağlı bir bileşendir.
Not: URI tüm tarayıcılarla uyumlu değildir. URI’ler Google Chrome ve Mozilla Firefox gibi birçok popüler tarayıcıda kullanılabilmesine rağmen, Internet Explorer 5,6,7 veya Safari 5 ve 6 gibi bazı eski sürüm tarayıcılar URI şeması tarafından desteklenmez.
URI İle URL Arasındaki İlişki
URI ve URL arasındaki ilişki, bir URL’nin web kaynaklarını tanımlamak için kullanılan belirli bir URI türü olmasıdır. Tüm URL’ler URI iken, tüm URI’ler URL değildir. Başka bir deyişle, URL, özellikle web kaynakları için kullanılan URI’lerin bir alt kümesidir.
URI İle URL’nin Amacı
URI ve URL’nin amacı, internet üzerindeki kaynakları tanımlamak için standart bir yol sağlamaktır. URI’ler ve URL’ler, geliştiricilerin web sayfaları ve resimler gibi farklı kaynaklar arasında bağlantılar oluşturmasına ve kullanıcıların bu kaynaklara kolayca erişmesine olanak tanır.
URI İle URL Arasındaki Fark Nedir?
Bir URI, ağa bağlı olarak bir dizi farklı yolla erişilebilen bir kaynağı tanımlar. Bir URL ise size kaynağın ağ adresini verir. İnternetin ilk günlerinde, tek tanımlayıcılar URI’lerdi. Bunlar genellikle kaynağın ne olduğunu ve nerede bulunduğunu açıklayan çok uzun ve kullanışsız karakter dizileriydi.
Ancak, çok uzun ve karmaşık oldukları için bu tanımlayıcıları hatırlamak zordu. Bu sorunu çözmek için URL oluşturuldu. URL, kaynağın yerini tanımlayan çok daha basit bir tanımlayıcıdır.
URL bir ağ adresidir ve URI kaynağın bir açıklamasıdır. Bir URL’nin her zaman bir URI olmadığını unutmamanız önemlidir. Bir URI kullanılamadığında URL’nin kullanıldığı zamanlar vardır. Bu, bir web sitesindeki bir kaynağa eriştiğiniz durumlarda yaygındır. Bu durumda, web sitesinin URI’si URL olarak kullanılabilir.
URL (Uniform Resource Locator) | URI (Uniform Resource Identifier) | |
Tanım | İnternet üzerinde bir kaynağın yerini belirleyen belirli bir URI türü. | URL (konum) veya URN (ad) olabilen bir kaynağı tanımlamak için bir standart. |
Fonksiyonlar | Web üzerindeki kaynakları bulmak ve erişmek. | Bir kaynağı konum (URL) veya ad (URN) ile tanımlamak için. |
Bileşenler | Şema, ana bilgisayar, bağlantı noktası, yol, sorgu dizesi, parça.) | URL’ler ve URN’ler için değişen şema ve şemaya özgü kısım. |
Örnek | http://www.abc.com/page.html | http://www.example.com/page.html (as a URL), urn:isbn:0451450523 (as a URN) |
Kullanım | Ağırlıklı olarak web tarayıcılarında web sayfalarında gezinmek için kullanılır. | Web teknolojileri vb. dahil olmak üzere kaynakları tanımlamak için daha geniş bir uygulama yelpazesinde kullanılır. |
Özetle diyebiliriz ki, URL ve URI’ler web geliştirme ve internet iletişimi dünyasında temel kavramlardır. URL’ler web kaynaklarının yerini belirlemeye ve bunlara erişmeye odaklanırken, URI’ler hem URL’leri hem de URN’leri kapsayan daha geniş bir kaynak tanımlama çerçevesi sunar. Bu kavramları ve aralarındaki farkları anlamak, web teknolojileri ile çalışan veya dijital ortamda gezinen herkes için çok önemlidir.
URI ve URL İle İlgili En Çok Sorulan Sorular
1. İyi bir URI nedir?
İyi bir URI kendini açıklayıcı olmalı ve kaynağın kimliğini net bir şekilde ortaya koymalıdır. URI, kaynağın kimliğinin belirlenmesine yardımcı olan ve aynı zamanda kaynağın bulunduğu yerden alınmasına yardımcı olacak hiyerarşik bir yapıya sahip olmalıdır.
2. URL’lerin kullanım alanları nelerdir?
URL genellikle web sayfalarına veya bir web sayfasının belirli bölümlerine, yani HTTP’ye bağlanmak veya bağlantı vermek için kullanılır. Başka amaçlar için de kullanılırlar. Örneğin, dosya aktarımı için URL, FTP protokolüne sahip olacaktır, e-posta için mailto, veri tabanı erişimi için JDBC, vb.
3. Protokol ve kaynak için bir URL örneği verebilir misiniz?
http://www.abc.com, HTTP’nin protokol ve kaynağın www.abc.com olduğu bir URL örneğidir.
4. Bir sayfanın URL’si nasıl alınır?
İlk adım, istediğiniz sayfayı Google’da aratmak ve sayfayı açmak için bağlantıya tıklamaktır. Sayfanın üst kısmındaki tarayıcının adres çubuğu sayfanın URL’sini verecektir. Bu URL’yi kopyalayın ve adres çubuğunda kopyalanan URL ile yeni bir pencere açın. Bu sizi, kopyaladığınız URL’in sayfasına götürecektir.
5. URL ile URI arasındaki temel fark nedir?
URI bir kaynak tanımlayıcısıdır ve bir belge, web sayfası, resim, kitap vb. gibi herhangi bir kaynağı tanımlayabilir. URL, URI’nin bir alt kümesidir. Kaynağı konumuna göre tanımlar ve kaynağı konumdan almak için bir mekanizma sağlar.
6. URI bir URL olabilir mi?
Evet, bir URI bir URL olabilir. Aslında, tüm URL’ler URI’dir, ancak tüm URI’ler URL değildir. URL, yalnızca bir kaynağı adlandırmakla kalmayıp aynı zamanda onu bulmak için bir araç da sağlayan belirli bir URI türüdür. Örneğin, https://www.abc.com internet üzerindeki bir kaynağı tanımladığı ve ona erişim için bir konum sağladığı için hem bir URI hem de bir URL’dir.
7. Ne zaman URL yerine URN kullanmalıyım?
Bir kaynağı, konumunu veya ona nasıl ulaşılacağını belirtmeden adıyla tanımlamanız gerektiğinde URN kullanılmalıdır. Bu, özellikle konumları zaman içinde değişebilecek kaynaklar için kullanışlıdır. Örneğin, bir kitap için ISBN numarası (urn:isbn:0451450523), nerede depolandığına bakılmaksızın kitabı benzersiz bir şekilde tanımlayan bir URN’dir.
8. URL’ler ve URI’ler web uygulamalarında birlikte nasıl çalışır?
Web uygulamalarında, URL’ler ve URI’ler kaynak tanımlama ve erişimi kolaylaştırmak için birlikte çalışır. URI’lerin bir alt kümesi olan URL’ler, web kaynaklarını bulmak ve almak için yaygın olarak kullanılır. URI’ler, web kaynakları için URL’leri veya belirli bir ad alanındaki kaynakları adlandırmak için URN’leri içerebilen kaynak tanımlama için daha genel bir çerçeve sağlar. Bu kombinasyon, kaynakların hem benzersiz bir şekilde tanımlanabilmesini hem de web ortamlarında verimli bir şekilde erişilebilmesini sağlar.
9. URL yerine ne zaman URI kullanmalıyım?
Bir kaynağı adıyla tanımlamak istediğinizde veya kaynağa birden fazla konumdan erişilebildiğinde URI kullanmalısınız. URI, bilgisayarınızdaki bir dosya gibi internette bulunması gerekmeyen bir kaynağı tanımlamak istediğinizde de kullanılabilir.
10. URI’nin tam açılımı nedir?
URI’nin tam biçimi Uniform Resource Identifier’dır.
11. URL’ler ve URI’ler arasındaki ayrım web API geliştiricileri için neden önemlidir?
URL’ler ve URI’ler arasındaki ayrımın web API geliştiricileri için önemli olmasının birkaç nedeni vardır. İlk olarak, web geliştikçe ve standartlar değiştikçe, API tasarımlarınızı güncel tutabilmeniz için ikisi arasında ayrım yapmanıza yardımcı olur. İkinci olarak, URI’ler URL’lerden daha esnek olabilir, bu nedenle farkı anlamak API’nizi daha kullanıcı dostu hale getirmenize yardımcı olabilir. Son olarak, bazı web tarayıcıları ve diğer yazılım uygulamaları URI’leri URL’lerden farklı şekilde ele alır, bu nedenle ayrımı anlamak olası uyumluluk sorunlarından kaçınmanıza yardımcı olabilir.
12. Kullanıcılar bir API’ye eriştiklerinde neyi çağırıyor: URL’yi mi yoksa URI’yi mi? URL/URI’nin arkasında ne var?
Bir kullanıcı bir API’ye erişirken ya URL’yi ya da URI’yi kullanır. Bu, API’nin ne olduğuna ve nasıl barındırıldığına bağlıdır. API bir web sitesinde barındırılıyorsa, API tüketicileri ona erişmek için URL’yi kullanır. API farklı bir sunucuda barındırılıyorsa, API tüketicileri ona erişmek için URI’yi kullanmak zorunda kalabilir. URL ve URI’nin arkasında kaynaklar vardır. URI bir kaynağa, URL bir ağ adresine işaret eder. URL ve URI yalnızca URI’nin kaynak türünü ve kaynak adını söyleyen bir tanımlayıcı olması, URL’nin ise kaynağın konumunu açıklayan bir ağ adresi olması bakımından farklılık gösterir.