Çoğu zaman, tam olarak doğru olmasa bile "Bir alan adı satın aldım" veya "Resimlerimiz farklı bir sitede barındırılıyor" gibi ifadeler kullanabilirsiniz. Ancak bazı durumlarda daha kesin olmak gerekir. Örneğin, çerezlerle uğraşırken site ve kaynak arasındaki farkı anlamanız gerekir.
URL bölümlerinin adları, bir JavaScript API'sini de tanımlayan bir standartta belirtilir:
- URL standardı, mühendislerin birlikte çalışabilir web tarayıcıları oluşturabilmesi için URL'leri ve ilgili kavramları tanımlar.
- Standarttaki URL API bileşeni, URL dizesinin bölümlerine (ör. şema veya kaynak) erişim sağlama yöntemlerini tanımlar.
Bu belgede, HTTP veya HTTPS URL dizeleriyle kullanılan çeşitli terimler açıklanmaktadır. Dosya veya veri URL'leri gibi diğer URL türlerini kapsamaz. host ve origin gibi terimlerin doğru tanımları doğası gereği karmaşıktır. Bu nedenle, bu belgede tam açıklamalar yerine örnekler ve URL standardına bağlantılar verilmiştir.
URL API'si tarafından tanımlanan URL bileşenlerinin adlarını almak için JavaScript kullanabilirsiniz. Örneğin:
let url = new URL('https://foo.com.au:1234/bar/foo.html#bar');
console.log(url);
URL analiz aracı
URL dizesinin bölümlerinin nasıl adlandırıldığını görmek için aşağıdaki URL'yi düzenleyin. Bu sayfayı https://chrome.dev/url-parts/ adresinde ayrı bir sekmede de açabilirsiniz.
URL bölümlerinin adları aşağıda alfabetik olarak listelenmiştir.
Ülke kodu üst düzey alanı (ccTLD)
ISO 3166-1 Ülke Kodları listesinde tanımlanan bir üst düzey alan.
Alan adı
Noktalarla ayrılmış bir HTTP veya HTTPS URL'sinin bölümleri: Şemadan sonraki her şey ancak yoldan veya bağlantı noktasından (belirtilmişse) önceki her şey. Alan adının her bir bölümüne etiket denir.
| URL | Alan adı |
|---|---|
| https://example.github.io/path | example.github.io |
| https://support.example.org.au:443 | support.example.org.au |
Etkili üst düzey alan (eTLD)
Genel Ek Listesi'ndeki bir giriş. Bu giriş, TLD'yi ve (birden fazla bölüm içeren eTLD'ler için) bunun altındaki ek alanları (ikinci düzey, üçüncü düzey vb.) içerir.
- Örneğin:
com,com.au,github.io,sa.edu.au,schools.nsw.edu.au.
Bu örneklerdeki gibi "public suffix" (genel sonek), alanların kaydedilebileceği bir addır. Genel Ek Listesi, bilinen tüm genel eklerin listesidir ve sık sık güncellenir. Chromium ve Firefox gibi tarayıcılar, derlemelerinde bu listeyi kullanır.
eTLD+1
Kayıt edilebilir alan başlıklı makaleyi inceleyin.
Bir eTLD ve ondan önceki alt alan adı.
- Örneğin:
example.com,example.org.au,example.github.io,example.sa.edu.au,example.schools.nsw.edu.au.
Dosya adı
URL standardında tanımlanmamış ve URL API'sinin bir parçası olmamasına rağmen, URL'nin bir dizin yapısıyla doğrudan eşlendiği şeklindeki (genellikle yanlış olan) varsayıma dayalı olarak URL'nin nihai, yol içermeyen kısmına atıfta bulunmak için yaygın olarak kullanılır.
Örneğin, https://example.com/dir/file.html ile file.html, dosya adı olarak adlandırılabilir.
Dosya adı değeri, indirilen öğeleri adlandırmak için de tarayıcılar tarafından kullanılır.
Örneğin, https://example.com/images/image.jpg genellikle image.jpg konumuna yerel olarak kaydedilir.
Parça
URL'nin sonunda # karakterinden sonra gelen ve parça tanımlayıcısı sağlayan bir dize.
- Örneğin:
https://example.com/cats#tabbyURL'sinin parça tanımlayıcı değeritabby'dir.
# işaretini içeren kısma karma veya bağlantı denir.
Ayrıca metin parçalarına bağlantı verebilir ve bunları vurgulayabilirsiniz.
Karma, parça yerine URL API tarafından döndürülür.
Tam nitelikli alan adı (FQDN)
Bir web sitesinin veya sunucunun IP adresiyle eşlenen tam adresi.
| URL | FQDN |
|---|---|
| https://example.com:1234/cats | example.com |
| https://api.example.github.io | api.example.github.io |
Bir URL'nin FQDN'si, varsayılan olmayan bir bağlantı noktası kullanılsa bile bağlantı noktasını içermez.
Karma (veya bağlayıcı)
URL'nin sonunda # karakterinden sonra gelen ve parça tanımlayıcısı sağlayan bir dize. (In some contexts this is referred to as an "anchor".)
# hariç tutulan kısma parça adı verilir.
Ayrıca metin parçalarına bağlantı verebilir ve bunları vurgulayabilirsiniz.
Karma, parça yerine URL API tarafından döndürülür.
Ana makine
URL standardında tanımlandığı gibi, ana makine bir alan adı, IPv4 adresi, IPv6 adresi, opak ana makine veya boş ana makine olabilir.
- URL standardının
hosttanımı bağlantı noktasını içermez. - Bağlantı noktası, şema için varsayılan bağlantı noktası olmadığı sürece
URL.hostiçinde yer alır. URL.hostname, bağlantı noktasını içermez.
| URL | URL.host |
|---|---|
| https://www.example.com:443/cat |
www.example.com// 443 is the default port for the scheme
|
| https://www.example.com:1234/cat | www.example.com:1234 |
| https://cat.example.github.io | cat.example.github.io |
Ana makine adı
Ana makine adı, JavaScript URL API'si tarafından tanımlanır ancak URL standardı tarafından başka bir yerde tanımlanmaz. Daha ayrıntılı bilgi için temsil başlıklı makaleyi inceleyin.
URL.hostname, bağlantı noktası olmadan ana makineyi döndürür.
| URL | URL.hostname |
|---|---|
| https://www.example.com:443/cat | www.example.com |
| https://www.example.com:1234/cat | www.example.com |
| https://cat.example.github.io | cat.example.github.io |
Köken
URL standardı origin tanımlar ve arka plan için HTML standardına bağlantı verir.
HTTP veya HTTPS URL'leri için URL.origin, şemayı, ana makineyi ve bağlantı noktasını (bağlantı noktası şema için varsayılan olmadığı sürece) döndürür.
| URL | URL.origin |
|---|---|
| https://www.example.com:443/cat | https://www.example.com |
| https://www.example.com:1234/cat | https://www.example.com:1234 |
| https://cat.example.github.io | https://cat.example.github.io |
Parametre
Arama parametreleri bölümüne bakın.
Şifre
Kullanıcı adı başlıklı makaleyi inceleyin.
Yol adı
Bir HTTP veya HTTPS URL'si için alan adından ve bağlantı noktasından (tanımlanmışsa) sonraki bölüm, filename (tanımlanmışsa) dahil ancak arama dizesi veya karma hariç.
| URL | URL.pathname |
|---|---|
| https://example.com | [empty string] |
| https://example.com:8000/search?q=tabby | /search |
| https://example.github.io/cat/pattern#tabby | /cat/pattern |
| https://example.github.io/README.md | /README.md |
"Yol", bazen dosya adı olmadan dosya yolunu ifade etmek için kullanılır. Örneğin, https://example.com/cat/pattern/tabby.html URL'sinde "yol" /cat/pattern olur.
Bağlantı noktası
URL'de : işaretinden sonra gelen ve bir ağ bağlantı noktasını tanımlayan sayı. Örneğin: https://example.com:1234/tabby URL'si için bağlantı noktası numarası 1234'tür.
Bağlantı noktası numarası bir 16 bitlik işaretsiz tam sayı olmalıdır. Diğer bir deyişle, 0 ile 65535 arasında (ikisi de dahil) bir tam sayı olmalıdır.
HTTP URL'si için varsayılan bağlantı noktası 80, HTTPS için ise 443'tür. Varsayılan olmayan bir bağlantı noktası kullanılmadığı sürece URL'de bağlantı noktası numarasının belirtilmesi gerekmez.
API, şema için varsayılan bağlantı noktası kullanılıyorsa boş bir dize döndürür.
| URL | URL.port |
|---|---|
| https://example.com | // empty string |
| https://example.com:443/foo | // empty string: port is default for scheme |
| https://www.example.com:1234/foo | 1234 |
Protokol
: ile birlikte şema (örneğin, http: veya https:).
protocol, URL API'sinden kullanılabilir ancak scheme kullanılamaz.
Sorgu (veya "sorgu dizesi")
URL'nin, baştaki ? hariç arama kısmı.
Kaydedilebilir alan
comveyaorggibi tek parçalı bir eTLD'ye sahip URL'ler için (yani bir TLD'ye karşılık gelen bir eTLD) alan adı ve ondan önceki ikinci düzey alan adı: örneğin,example.comveyaexample.org.- Yalnızca üçüncü düzey kaydın yapılmasına izin verilen iki bölümlü bir eTLD'ye sahip URL'ler için (ör.
com.auvegithub.iogibi Genel Son Ek Listesi'ndeki girişler) iki bölümlü üst düzey alan adı ("genel son ek") ve hemen öncesindeki üçüncü düzey alan adı. Örneğin:example.org.auveyaexample.github.io. - Üç veya daha fazla bölümden oluşan eTLD'ler için eTLD ve ondan önceki alan.
Şema
Bir URL'ye istek gönderildiğinde ağ protokolünü (veya kullanıcı aracısı tarafından gerçekleştirilecek işlemi) tanımlayan URL'nin :// öncesindeki kısmı. Örneğin, https şemasına sahip bir URL'ye yapılan istek, HTTPS protokolü kullanılarak yapılmalıdır. file, mailto veya git gibi bir şemaya sahip ve ağ protokolüne karşılık gelmeyen bir URL'ye yapılan isteklerde davranış, kullanıcı aracısına bağlıdır. Örneğin, bir kullanıcı mailto bağlantısını tıkladığında çoğu tarayıcı, bağlantının href URL'sindeki değerleri kullanarak varsayılan e-posta uygulamasını açar.
Ara
pathname sonra sağlanan, parametreleri ve değerlerini temsil eden bir dizi anahtar/değer çiftinden önce gelen soru işareti.
| URL | URL.search |
|---|---|
| https://example.com/cats?pattern=tabby&mood=bonkers | ?pattern=tabby&mood=bonkers |
| https://example.com/cats:443?pattern=tabby | ?pattern=tabby |
query veya "sorgu dizesi", ? ile başlamayan search anlamına gelir.
Arama parametreleri başlıklı makaleyi de inceleyin.
Arama parametreleri
Arama dizesinde (veya "sorgu dizesi") iletilen bir veri öğesine başvurur.
- Örneğin:
https://example.com/cats?pattern=tabby&mood=bonkersiçin arama dizesinde iki parametre bulunur:pattern=tabbyvemood=bonkers.
İkinci düzey alan
Üst düzey alan öncesindeki alan.
https://www.example.comURL'sinde ikinci düzey alan,comüst düzey alanının alt alan adı olanexample.com'dir.https://example.org.auiçin üst düzey alanau, ikinci düzey alanorgve üçüncü düzey alanexample'dır. Bu örnekte,org.au,aualanının alt alan adı,example.org.auiseorg.aualanının alt alan adıdır.
Site
Site, aynı site ile birlikte HTML standardı tarafından tanımlanır. Aynı site, şemayı ve şemasız aynı site kavramlarını içerir.
Site, URL standardında veya JavaScript URL API'sinde tanımlanmamıştır.
Bu bağlamda:
https://example.comgibi tek bölümlü eTLD'ye sahip bir HTTP veya HTTPS URL'si için site,scheme, eTLD ve ondan önceki etiketten oluşur. Örneğin:https://www.example.com/catURL'si için sitehttps://example.com'dir. (Bu URL için eTLD, üst düzey alanla aynıdır.)co.uk,github.ioveyasa.edu.augibi çok parçalı eTLD'lerde "site",scheme, eTLD ve ondan önceki etiketten oluşur. Örneğin:https://cat.example.co.uk/tabbyURL'si için sitehttps://example.co.uk,https://www.education.sa.gov.auiçin ise sitehttps://education.sa.gov.au'dür.
| URL | Site (şema ve eTLD+1 ile) |
|---|---|
| https://cat.example.com/tabby | ("https", "example.com") |
| https://cat.example.co.uk/tabby | ("https", "example.co.uk") |
Kaynak'ın aksine, site bağlantı noktası içermez.
Alt alan adı
Daha üst düzey bir alan içindeki alan.
com veya org gibi tek parçalı üst düzey alan adlarına sahip sitelerde, üst düzey alan adından önceki ve her biri nokta ile ayrılmış olan parçalar.
www.example.com,example.comalanının alt alan adıdır.support.api.example.org,api.example.orgalanının alt alan adıdır.api.example.orgiseexample.orgalanının alt alan adıdır.
Yalnızca üçüncü düzey kayıtların yapılmasına izin verilen iki bölümlü eTLD'ler(ör. Genel Sonek Listesi'ndeki co.uk ve github.io gibi girişler) için alt alan adları, alan adının bu kısımdan önceki bölümleridir.
- Örneğin:
cat.example.co.uk,example.co.ukalanının alt alan adıdır.
Metin parçası
Bir sayfadaki bir metin aralığına bağlantı vermeyi ve bu metin aralığını vurgulamayı mümkün kılan bir parça türü. Bir kullanıcı, metin parçası içeren bir bağlantıyı tıkladığında tarayıcı, sayfadaki metni bulmaya, kaydırmaya ve vurgulamaya çalışır.
Metin parçası, arama teriminin ardından :~:text= ile başlar.
Örneğin, bu sayfadaki "fragment" metninin ilk oluşumuna bağlantı vermek için https://web.dev/articles/url-parts#:~:text=fragment URL'sini kullanın.
Daha fazla bilgi: Metin parçaları.
Üst düzey alan (TLD)
Kök Bölge Veritabanı'nda listelenen bir alan adı (ör. com veya org). Bazı üst düzey alanlar, uk ve tv gibi ülke kodu üst düzey alanlarıdır.
Bir HTTP veya HTTPS URL'sinin bölümleri açıklanırken TLD, son noktadan sonra gelen alan adıdır.
https://example.orgiçin URL'nin üst düzey alanıorg'dir.https://example.org.auiçin URL'nin üst düzey alanıau,orgise ikinci düzey alandır (orgaynı zamanda üst düzey alan olsa da).org.au, iki bölümden oluşan bir eTLD'dir.
eTLD'lerin Genel Sonek Listesi, bir, iki veya daha fazla bölümden oluşan alanları içerir. Bu nedenle, bir TLD de eTLD olabilir. Örneğin:
https://example.comiçin URL'nin eTLD'sicom'dir ve bu da bir TLD'dir.
Kullanıcı adı
URL'nin başında isteğe bağlı bir kullanıcı adı ve şifre sağlanabilir ancak bu özellik, güvenlik nedeniyle kullanımdan kaldırılmıştır ve çoğu durumda yoksayılır.
Örneğin, https://user123:password1@example.com ile kullanıcı adı user123 olur. Kullanıcı adının (ve şifrenin) düz metin biçiminde olduğunu ve şifrelenmediğini unutmayın.
Kullanıcı adı : veya @ simgelerini içeriyorsa bunlar sırasıyla %3A ve %40 olarak URL ile kodlanmalıdır.
Daha fazla bilgi
- WHATWG: URL Living Standard
- WHATWG: HTML Living Standard
- URL API
- "Aynı site" ve "aynı kaynak" kavramlarını anlama
- RFC: Birörnek Kaynak Konumlandırıcılar (URL)
- RFC: URI'ler, URL'ler ve URN'ler
- Kök Bölge Veritabanı (TLD'lerin dizini)
- Genel Ek Listesi (eTLDs dizini): "Genel ek, noktalarla birleştirilmiş bir DNS adları veya joker karakterler kümesidir. Bu, alan adının bireysel kayıtlı kullanıcıların kontrolünde olmayan kısmını ifade eder.")
- ICANN sözlüğü
- Tam nitelikli alan adı nedir?
- Bir URL'yi kaç şekilde bölebilir ve parçaları nasıl adlandırabilirsiniz?
- MDN Web Docs Glossary (MDN Web Dokümanları Sözlüğü)
- URL nedir?
- URL'nin Geçmişi