COMPUTER ENGINEER

Örneklere git
Blog
HTTP / HTTPS / TLS6 dk çalışma
02/ 70

Web ve protokol temelleri

URL, origin ve site

Benzer görünen adreslerin güvenlik sınırları farklıdır.

AnlaÖrneği inceleKendin uygula

Kavramı anlayalım

URL şema, host, port, path ve isteğe bağlı query içerir. Fragment (#sonrası) HTTP isteğine gönderilmez; tarayıcı içi gezinme için kullanılır. Query’de secret veya kişisel veri taşımak, URL logları ve geçmiş üzerinden sızıntı yaratabilir.

Origin şema + host + etkin port birleşimidir. https://app.example.test ile https://api.example.test aynı origin değildir. Same-site başka bir kavramdır; cookie kuralları kayıt edilebilir alan adı ve şema gibi unsurları kullanır. Aynı site olmak aynı origin olmak anlamına gelmez.

Varsayılan HTTPS portu 443, HTTP portu 80’dir; bunlar bir güvenlik garantisi değildir. URL encoding ile veri taşırken her alanı doğru kodla; bütün URL’yi rastgele encode etmek path ve query ayraçlarının anlamını bozabilir.

NERESİNDE KULLANIRSIN?

CORS ve cookie hatalarını birbirinden ayırmak için.

SIK YAPILAN HATA

Subdomain farklılığının origin’i değiştirmediğini sanmak.

01 / UYGULAMA

Aynı konu. Üç farklı derinlik.

HTTP / temsili örnek
https://app.example.test:443/blog?q=http#headers

Fragment gönderilmez; query gönderilir.

Bu sayfa dış sunuculara istek göndermez. HTTP mesajları temsili, HTTP/1.1 biçiminde okunabilir gösterimlerdir; HTTP/2 ve HTTP/3 wire formatı değildir. example.test ayrılmış öğretim alan adıdır. Komut ve JavaScript örneklerini yalnız kendi test ortamında uygula; gerçek token veya cookie yayımlama.

02 / SIRA SENDE

Önce kendin dene.

localhost:3000 ve localhost:5048 aynı origin midir?

Çözümü ve açıklamasını göster
Açıklamalı çözüm
http://localhost:3000 ≠ http://localhost:5048

Port farklı olduğu için hayır.