Salı, 22 Eylül 2026

Web Formundaki Bilgiler Sunucuya Nasıl Gönderilir?

7 dk okuma 0 yorum

Web formu, modern web sitelerinin vazgeçilmez bir parçasıdır. Kullanıcılar, ad, e-posta, mesaj gibi bilgileri hızlıca girebilir ve bu veriler bir sunucuya iletilir. Ancak bu sürecin arkasında karmaşık bir teknoloji yığını yatar. Kullanıcının tarayıcısında gerçekleşen HTTP isteklerinden, sunucu tarafında işlenen scriptlere kadar her adımda dikkat edilmesi gereken noktalar vardır. Bu makale, web formundaki bilgilerin sunucuya nasıl ulaştığını, hangi protokollerin kullandığını ve güvenlik açıklarını önlemek için neler yapılması gerektiğini adım adım açıklayarak okuyucuya pratik bir rehber sunacak.

Temel Kavramlar ve Tanımlar

Web formu, HTML ile oluşturulan bir dizi input alanından oluşur. Kullanıcı bu alanlara veri girer ve “Gönder” butonuna bastığında tarayıcı form verilerini belirli bir URL’ye (action attribute) POST veya GET metodu ile gönderir. POST, verilerin HTTP gövdesinde taşınmasını sağlar ve gizlilik açısından daha uygundur. GET ise verileri URL parametreleri olarak gönderir, bu nedenle gizli bilgiler için uygun değildir. Sunucu tarafında ise bu veriler PHP, Node.js, Python gibi dillerle işlenir, veritabanına kaydedilir veya e-posta gönderisi yapılır. Güvenlik için, hem istemci tarafında hem de sunucu tarafında doğrulama yapılması şarttır; aksi takdirde SQL injection, XSS gibi saldırılara açık bir sistem ortaya çıkar.

Web Formu ile Veri Gönderme Süreci

Form gönderildiğinde tarayıcı, form elemanlarının ad ve değer çiftlerini toplayarak bir HTTP isteği oluşturur. Eğer method POST ise, bu veriler istek gövdesinde bulunur. İstek, formun action URL’sine yönlendirilir ve HTTP header’ları (Content-Type: application/x-www-form-urlencoded) ile birlikte sunucuya iletilir. Sunucu bu isteği alır, gelen verileri uygun formatta ayrıştırır ve işleme başlar. Örneğin, bir e-posta abonelik formu, kullanıcı adı ve e-posta adresini alır, doğrulama kurallarına göre kontrol eder ve ardından veritabanına kaydeder. Bu süreçte kullanılan protokol, güvenlik sertifikası ve şifreleme yöntemleri, verinin bütünlüğünü ve gizliliğini korur.

HTTP Protokolü ve POST Metodu

HTTP, istemci ve sunucu arasındaki iletişimde temel taşıdır. POST, özellikle form verilerini iletirken en yaygın kullanılan yöntemdir. POST isteği, HTTP gövdesinde veriyi taşır ve bu nedenle URL’de gizliliği bozan bilgiler yer almaz. Ayrıca POST, istek gövdesinin boyutu sınırlı olmadığı için büyük veri setleri göndermek mümkündür. HTTP 1.1 ve 2.0 sürümlerinde header’lar ve MIME tipleri farklılık gösterebilir; bu nedenle geliştiricilerin güncel protokol dokümantasyonunu takip etmesi gerekir. Örneğin, JSON formatında veri göndermek istenirse Content-Type: application/json header’ı eklenir ve sunucu bu formatı ayrıştırır.

İstemci Tarafı Validasyonu

İstemci tarafında yapılan doğrulama, kullanıcı deneyimini iyileştirir ve gereksiz sunucu isteklerini azaltır. JavaScript ile form alanlarının boş bırakılmadığından, e-posta alanının geçerli bir formatta olduğundan emin olunur. Ayrıca, CAPTCHA eklenerek bot saldırılarına karşı önlem alınır. Ancak istemci tarafı doğrulama yalnızca kullanıcı dostu bir ön filtredir; sunucu tarafında aynı kuralların tekrar uygulanması zorunludur. Çünkü istemci tarafı kolayca bypass edilebilir. Gelişmiş kütüphaneler (jQuery Validate, Parsley.js) ile form doğrulama süreci otomatikleştirilebilir.

Sunucu Tarafı İşleme ve Güvenlik Önlemleri

Sunucu tarafında, gelen veriler SQL injection, XSS, CSRF gibi saldırılara karşı filtrelenmelidir. Parametrik sorgular (prepared statements) ile veritabanı işlemleri güvenli hale getirilir. XSS için çıktı öncesi veriler HTML escape edilir ve öğelere eklenir. CSRF koruması için token tabanlı sistemler (CSRF token) kullanılır; bu token, form gönderdiğinde eşleşen bir değeri doğrular. Ayrıca, HTTPS protokolü (TLS 1.2 ve üzeri) ile veri şifrelenir, böylece ağ üzerinden geçen bilgiler üçüncü şahıs tarafından okunamaz. Sunucu tarafında ayrıca belirli zaman dilimlerinde IP tabanlı rate limiting uygulanarak brute force saldırıları engellenir.

Çerezler ve Oturum Yönetimi

Form gönderildikten sonra kullanıcı oturum yönetimi için çerezler kullanılabilir. Çerezler, kullanıcı kimliğini belirlemek ve oturum sürekliliğini sağlamak için yaygın olarak kullanılır. Ancak çerezlerin gizliliği ve güvenliği için Secure ve HttpOnly flag’leri set edilmelidir; böylece çerezler yalnızca HTTPS üzerinden gönderilir ve JavaScript erişimine kapalı olur. Ayrıca SameSite özelliği ile çerezlerin CSRF saldırılarına karşı korunması sağlanır. Oturum yönetiminde JWT (JSON Web Token) kullanmak da popüler bir seçenektir; token, kullanıcı kimliğini ve yetki bilgilerini JSON formatında taşır ve sunucu tarafında doğrulanır.

Uzman Önerileri ve İpuçları

1. HTTPS kullanın – tüm form isteklerini şifreleyin.
2. İstemci ve sunucu tarafında doğrulama yapın – her iki katman da güvenli olmalı.
3. Prepared statements kullanın – SQL injection riskini ortadan kaldırın.
4. CSRF token ekleyin – oturum çerezlerini koruyun.
5. Güçlü CAPTCHA uygulayın – bot girişimlerini engelleyin.
6. Çerezleri Secure, HttpOnly, SameSite olarak ayarlayın – güvenlik katmanını artırın.
7. Rate limiting uygulayın – brute force saldırılarını sınırlayın.
8. Form verilerini JSON olarak gönderin – modern API ile uyumlu hale getirin.
9. Input sanitization – kullanıcıdan gelen verileri temizleyin.
10. Düzenli güvenlik taramaları yapın – potansiyel açıkları erken tespit edin.

Sıkça Sorulan Sorular

Form verilerini GET yerine POST ile göndermenin avantajları nelerdir?

GET, veriyi URL’de tutar, bu da gizli bilgilerin açığa çıkmasına yol açar. POST ise veriyi gövde içinde taşır, URL’de görünmez ve URL uzunluk sınırlaması yoktur. Bu nedenle gizli veriler için POST tercih edilir.

CSRF saldırısı nedir ve nasıl önlenir?

CSRF, kötü niyetli bir siteyi kullanıcının oturum çerezini kullanarak istek göndermesini sağlar. Çerezler aynı zamanda oturum açan siteye gönderilir. Çözüm olarak, sunucu tarafında CSRF token’ı doğrulamak ve çerezleri SameSite=Strict ayarlamak gerekir.

Çerezlerin Secure ve HttpOnly flag’leri ne işe yarar?

Secure flag çerezi yalnızca HTTPS üzerinden gönderir, böylece çerezler şifrelenmiş bir bağlantı içinde taşınır. HttpOnly flag, JavaScript’in çereze erişmesini engeller, XSS saldırılarının çerez çalmasını önler.

JSON ile form gönderimi neden tercih edilmeli?

JSON, veri yapısını esnek ve okunabilir tutar. API entegrasyonları için yaygın bir format olduğundan, JSON ile gönderim backend ile uyum sağlar. Ayrıca Content-Type: application/json header’ı ile sunucu doğru formatı algılar.

Form verisi gönderilirken hangi HTTP header’lar eklenmelidir?

Common header’lar arasında Content-Type, Accept, X-Requested-With (AJAX) ve User-Agent bulunur. POST için Content-Type: application/x-www-form-urlencoded veya application/json tercih edilir.

Sonuç

Web formundaki bilgiler, istemci tarafında toplanır, HTTP POST isteğiyle sunucuya iletilir ve sunucu tarafında güvenlik kontrolleriyle işlenir. Bu süreçte HTTPS, CSRF koruması, çerez güvenliği ve veri doğrulama gibi önlemler kritik öneme sahiptir. Modern uygulamalarda JSON formatı ve API entegrasyonları sıklıkla kullanılır; bu da form verilerinin taşınmasını daha esnek ve güvenli kılar. Uzman önerileri ve doğru altyapı kuralları, hem kullanıcı deneyimini hem de sistem güvenliğini maksimize eder. Form verisinin güvenli bir şekilde sunucuya gönderilmesi, sadece teknik bir işlem değil, aynı zamanda veri gizliliği ve kullanıcı güveni için temel bir unsurdur.

Sibel Demir

Sibel Demir, Tekno Küre haber merkezinde muhabir olarak görev yapıyor. Türkiye ve dünya gündemindeki son dakika gelişmelerini takip ediyor; sahadan ve resmi kaynaklardan doğruladığı bilgileri okurlara aktarıyor. Bugüne kadar 218 haber hazırladı.

Sibel Demir yazarının 218 haberi →

Yorum Yap