Merhaba MMOZirve Ailesi
Güvenli ve Hızlı İletişimin Temelleri: HTTP Protokolü ve HTTPS Rehberi
Web geliştiriciliğinde, kullanıcı arayüzünü (Frontend) ve uygulama mantığını (Backend) bilmek kadar, bu iki katman arasındaki iletişimin nasıl çalıştığını anlamak da kritik öneme sahiptir. Bu iletişim, HTTP (Hypertext Transfer Protocol) aracılığıyla gerçekleşir. Günümüzde bu protokolün güvenli versiyonu olan HTTPS standarttır.
Bu rehberde HTTP'nin temellerini, istek yöntemlerini ve güvenli iletişimin neden zorunlu olduğunu paylaşacağım

I. HTTP Nedir ve Nasıl Çalışır?
HTTP, tarayıcınız (istemci/client) ile sunucu (server) arasında bilgi alışverişini sağlayan durumsuz (stateless) bir protokoldür. Durumsuz olması, her isteğin birbirinden bağımsız olduğu anlamına gelir; sunucu, önceki istekleri otomatik olarak hatırlamaz (bu nedenle oturum yönetimi için çerezler kullanılır).
1. İstek (Request) ve Cevap (Response) Döngüsü
İletişim her zaman tarayıcının bir istek (request) göndermesiyle başlar ve sunucunun bir cevap (response) dönmesiyle sonlanır.
- İstek Bileşenleri: URL, İstek Yöntemi (GET, POST vb.), İstek Başlıkları (Headers), İsteğin Gövdesi (Body - POST için).
- Cevap Bileşenleri: Durum Kodu (Status Code), Cevap Başlıkları, Cevabın Gövdesi (HTML, JSON, Resim vb.).
2. En Sık Kullanılan HTTP İstek Yöntemleri (Metodları)
Bu yöntemler, sunucunun kaynak üzerinde ne tür bir eylem gerçekleştirmesi gerektiğini belirtir (RESTful API tasarımının temelidir):
- GET: Sunucudan veri almak için kullanılır. (Örn: Bir blog yazısını görüntülemek.)
- POST: Sunucuya yeni veri göndermek veya oluşturmak için kullanılır. (Örn: Bir form göndermek, yeni bir kullanıcı kaydı oluşturmak.)
- PUT/PATCH: Sunucudaki mevcut bir kaynağı güncellemek için kullanılır. (PUT genellikle kaynağın tamamını, PATCH ise yalnızca bir kısmını günceller.)
- DELETE: Sunucudaki bir kaynağı silmek için kullanılır.
3. Kritik HTTP Durum Kodları
Sunucunun isteğe cevabının başarılı olup olmadığını gösterir. Her geliştiricinin bilmesi gereken temel kodlar:
- 200 OK: İstek başarılı ve beklenen cevap döndürüldü.
- 301 Moved Permanently: Sayfa kalıcı olarak başka bir adrese taşındı (SEO için önemlidir).
- 400 Bad Request: İstemci hatası; sunucu isteği anlayamadı veya işleyemedi.
- 401 Unauthorized: Kaynağa erişim için kimlik doğrulaması gerekiyor.
- 403 Forbidden: Kimlik doğrulama başarılı ancak erişim yetkisi yok.
- 404 Not Found: İstek yapılan kaynak sunucuda bulunamadı.
- 500 Internal Server Error: Sunucu tarafında beklenmeyen bir hata oluştu.
II. HTTPS: Neden Zorunluluktur?
HTTPS (Hypertext Transfer Protocol Secure), basitçe HTTP'nin, SSL/TLS (Secure Sockets Layer / Transport Layer Security) protokolü ile şifrelenmiş halidir.

1. HTTPS'in Üç Temel Faydası
- Veri Bütünlüğü: Aktarım sırasında verinin değiştirilmediğini garanti eder.
- Şifreleme: İstemci ve sunucu arasındaki tüm veriler (şifreler, kredi kartı bilgileri) şifrelenir. Üçüncü şahıslar bu veriyi okuyamaz.
- Kimlik Doğrulama: Kullanıcının doğru sunucuya bağlandığını ve o sitenin iddia ettiği site olduğunu doğrular (Man-in-the-Middle saldırılarını önler).
2. Web Gelişimindeki Yeri
Artık modern web geliştiriciliğinde HTTPS bir seçim değil, bir zorunluluktur:
- SEO Avantajı: Google, HTTPS kullanan sitelere sıralamalarda avantaj sağlar.
- Yeni Tarayıcı Özellikleri: Konum bilgisi, bildirimler (push notifications) gibi kritik tarayıcı API'leri sadece HTTPS altındaki sitelerde çalışır.
- Kullanıcı Güveni: Tarayıcılar, HTTPS olmayan siteleri "Güvenli Değil" olarak işaretleyerek kullanıcıları uyarır.

Not
Web geliştiriciler olarak, yazdığımız kodun nasıl çalıştığını anlamak kadar, bu kodun tarayıcılar ve sunucular arasında nasıl hareket ettiğini de bilmeliyiz. HTTP ve HTTPS, modern web uygulamalarının hızlı, güvenli ve güvenilir olmasını sağlayan temel direklerdir.
İyi Forumlar MMOZirve Ailesi


