;

Mixed Content Tarayıcı

HTTPS bir sayfada güvensiz HTTP kaynaklar (resim, script, iframe) var mı kontrol edin. SEO ve güvenlik için kritik. Tarayıcıda anında çalışır, kayıt gerekmez, ücretsizdir.

Mixed Content Tarayıcı

HTTPS Güvenlik

Mixed Content Nedir? Neden Kritik?

Mixed content, HTTPS ile yüklenen bir web sayfasında HTTP üzerinden gelen kaynaklar bulunması durumudur. Örneğin sayfanız https://siteniz.com'da ama bir resim http://eski.com/resim.jpg üzerinden çağrılıyor. Bu durum bağlantınızın güvenliğini tamamen bozar.

Mixed content tespit edildiğinde tarayıcılar (Chrome, Firefox, Safari) sayfa adres çubuğunda "Güvenli Değil" uyarısı gösterir, bazı kaynakları (özellikle script ve iframe'leri) otomatik bloklar. Bu da hem güvenlik hem SEO açısından ciddi bir sorundur.

Mixed Content Türleri

1) Aktif Mixed Content (Kritik)

Sayfanın davranışını etkileyen kaynaklar:

  • <script src="http://..."> — JavaScript
  • <iframe src="http://..."> — Iframe
  • <link rel="stylesheet" href="http://..."> — CSS
  • <form action="http://..."> — Form gönderimi (kullanıcı verisi yolda dinlenir)
  • XMLHttpRequest, fetch() HTTP'ye — AJAX istekleri

Tarayıcılar bunları otomatik bloklar. Sayfanız düzgün çalışmaz: stil bozulur, butonlar tıklanmaz, AJAX işlemler başarısız olur.

2) Pasif Mixed Content (Uyarı)

Sayfa görünümünü etkileyen ama davranışı değiştirmeyen kaynaklar:

  • <img src="http://..."> — Resimler
  • <audio src="http://..."> — Ses dosyaları
  • <video src="http://..."> — Video
  • CSS url(http://...) — Arka plan resmi, font

Bunlar yüklenir ama tarayıcı "Güvenli Değil" uyarısı gösterir. Kullanıcı güvensiz hisseder, siteden çıkma olasılığı artar.

Mixed Content'in SEO ve Güvenlik Etkileri

  • SEO Zarar: Google HTTPS sitelere bonus verir, mixed content bu bonusu iptal eder
  • Adres çubuğu uyarısı: Kullanıcı "Güvenli Değil" görür, güveni kaybeder
  • Conversion düşüşü: E-ticaret sitelerinde sepet/ödeme aşamasında güven kritik
  • MITM açığı: Saldırgan HTTP içeriği değiştirerek sayfanıza kötü kod enjekte edebilir
  • Form verisi sızıntısı: http:// formdan gönderilen veriler şifrelenmez
  • Cookie sızıntısı: Şifreli sitenin cookie'leri http isteğinde plaintext gider

Mixed Content Nasıl Düzeltilir?

  1. Tespit edin: Aracımızla taradıktan sonra Chrome DevTools > Console'da da "Mixed Content" uyarılarına bakın
  2. HTTPS karşılığını kontrol edin: Genelde aynı kaynağın https:// versiyonu vardır, sadece protokolü değiştirin
  3. Protokol-relatif URL kullanın: src="//example.com/file.js" — tarayıcı sayfanın protokolünü otomatik ekler
  4. Self-hosted alternative: Eski dış kaynağı kendi sunucunuza kopyalayın
  5. Content Security Policy (CSP): upgrade-insecure-requests direktifi tüm HTTP'leri otomatik HTTPS'e çevirir

Pratik HTTP'den HTTPS'e Toplu Geçiş (WordPress)

# wp-config.php
define('FORCE_SSL_ADMIN', true);

# Better Search Replace eklentisi ile veritabanında:
http://siteniz.com → https://siteniz.com

# .htaccess'e ekleyin:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Content Security Policy (CSP) Direktifi

Yeni nesil çözüm: HTTP header'a Content Security Policy ekleyin:

Content-Security-Policy: upgrade-insecure-requests;

Bu, tarayıcıya "tüm HTTP isteklerini otomatik HTTPS'e çevir" der. Eski içeriği refactor etmenize gerek kalmaz, tarayıcı kendiliğinden günceller. Yan etki: HTTPS karşılığı olmayan kaynaklar artık çalışmaz, bu da iyi bir şey (yenilenmeli).

Sıkça Sorulan Sorular

Mixed content varsa sitem hiç çalışmaz mı?

Hayır, pasif mixed content (resim, video) yüklenir ama uyarı gösterilir. Aktif mixed content (script, CSS, iframe) tarayıcı tarafından bloklanır - sayfa düzeni bozulur, JavaScript çalışmaz. Sonuç: site "bozuk" görünür ama tamamen ölmez. Her halükarda kullanıcı deneyimi kötüleşir ve SEO zarar görür.

Eski blog yazılarımdaki resimler hep http://, hepsini düzeltmem şart mı?

Şart. WordPress'te Better Search Replace eklentisi ile tek SQL sorgusunda toplu olarak http:// → https:// dönüşümü yapabilirsiniz. Alternatif: HTTP header'a "Content-Security-Policy: upgrade-insecure-requests" ekleyin, tarayıcı otomatik dönüştürür - kaynağı değiştirmenize gerek kalmaz (kaynak HTTPS desteklemesi gerek).

Protokol-relatif URL (//) modern olarak güvenli mi?

Bugün önerilmiyor. Modern tarayıcılar zaten HTTPS-first çalışıyor, açıkça "https://" yazmak en temiz yöntem. Protokol-relatif URL'ler eski hibrit (HTTP+HTTPS) sitelerin döneminden kalmadır. Yeni içerikte her zaman tam "https://" kullanın, eski içerikte de düzeltin.

Tarayıcı uyarısı SEO'ya nasıl etki eder?

İki yönde: Google 2014'ten beri HTTPS'i sıralama faktörü olarak kabul ediyor (küçük ama gerçek bir bonus). Mixed content sitesi tam HTTPS olmadığı için bu bonusu alamaz. Ayrıca "Güvenli Değil" gören kullanıcı bounce eder, bu davranışsal sinyal de SEO'ya zarar verir. Çift olumsuz etki - mutlaka düzeltin.

İlgili Araçlar

İlgili Araçlar

;