Blog / SSL & Sertifika / Karışık İçerik (Mixed Content) Nedir ve Nasıl Düzeltilir?

Karışık İçerik (Mixed Content) Nedir ve Nasıl Düzeltilir?

📅 Yayınlanma: 24 August 2026

Sitenizi HTTPS’e taşıdınız, geçerli bir SSL sertifikanız var; ama tarayıcı hâlâ adres çubuğunda tam bir kilit göstermiyor ya da “Bu sayfa tam olarak güvenli değil” diyor. Bunun en yaygın sebebi karışık içerik (mixed content): güvenli (HTTPS) bir sayfanın, içindeki bazı kaynakları güvensiz (HTTP) olarak yüklemesidir.

Bu yazıda karışık içeriğin ne olduğunu, neden riskli olduğunu, türlerini ve — en önemlisi — adım adım nasıl düzeltileceğini ve bir daha yaşanmaması için nasıl önleneceğini ele alıyoruz.

Karışık İçerik Nedir?

Bir web sayfası https:// üzerinden yüklendiğinde, tarayıcı o sayfanın tüm kaynaklarının (görsel, script, stil dosyası, font, video, iframe) da şifreli bağlantı üzerinden gelmesini bekler. Eğer sayfa içindeki herhangi bir kaynak http:// ile çağrılıyorsa, sayfa “karışık” hâle gelir: bir kısmı şifreli, bir kısmı açık. Tarayıcı bu durumu bir güvenlik sorunu olarak işaretler.

Bu genellikle bilerek yapılmaz; siteyi HTTPS’e taşırken şablonlarda, veritabanında veya üçüncü taraf kodlarda kalan eski http:// bağlantılarından kaynaklanır.

Neden Riskli? (SSL’in Anlamı Kaybolur)

HTTPS’in amacı, sayfa ile ziyaretçi arasındaki tüm trafiği şifreleyip ortadaki adam (MITM) saldırılarına karşı korumaktır. Sayfanın içinde tek bir HTTP kaynak bile olsa, o kaynak açıkça iletilir ve saldırgan tarafından okunabilir veya değiştirilebilir. Özellikle HTTP üzerinden yüklenen bir JavaScript dosyası ele geçirilirse, saldırgan tüm sayfanın kontrolünü alabilir. Yani karışık içerik, geçerli SSL sertifikanızın sağladığı güvenceyi büyük ölçüde boşa çıkarır.

İki Tür Karışık İçerik: Pasif ve Aktif

Tarayıcılar karışık içeriği tehlike düzeyine göre iki gruba ayırır:

  • Pasif (görüntüleme) karışık içerik: Görseller (<img>), video ve ses gibi, sayfanın geri kalanıyla etkileşime girmeyen kaynaklar. Tarayıcı bunları genellikle yükler ama kilit simgesini “eksik/uyarı” durumuna düşürür.
  • Aktif karışık içerik: Script (<script>), stil dosyaları (CSS), iframe, XMLHttpRequest/fetch gibi sayfanın davranışını değiştirebilen kaynaklar. Bunlar çok daha tehlikeli olduğu için modern tarayıcılar varsayılan olarak engeller — dosya hiç yüklenmez, site bozuk görünebilir (stil gitmiş, buton çalışmıyor).

Tarayıcıda Nasıl Görünür?

Karışık içeriğin belirtileri:

  • Adres çubuğunda tam kilit yerine uyarı simgesi ya da “Güvenli değil / Tam olarak güvenli değil” ifadesi.
  • Sayfanın bir kısmının görünmemesi veya stilin bozulması (aktif içerik engellendiğinde).
  • Tarayıcı geliştirici konsolunda (F12 → Console) “Mixed Content: The page at ‘https://…’ was loaded over HTTPS, but requested an insecure resource ‘http://…'” uyarıları.

En hızlı teşhis yöntemi: sayfada F12 ile konsolu açıp “Mixed Content” uyarılarını okumaktır; her uyarı, sorunlu HTTP kaynağının tam adresini verir.

Karışık İçerik Nasıl Düzeltilir?

  1. Sorunlu kaynakları bulun. Konsoldaki “Mixed Content” satırlarını ve sayfa kaynağını (view-source) tarayarak http:// ile başlayan bağlantıları tespit edin.
  2. HTTP’yi HTTPS yapın. Bu kaynakların HTTPS sürümü varsa (çoğu CDN, font ve API HTTPS sunar) bağlantıyı https:// olarak güncelleyin. Protokolü tamamen belirtmeyen “protokol-göreli” (//example.com/...) biçim de sayfanın protokolünü kullanır.
  3. Veritabanı/şablon değişimi. WordPress gibi sistemlerde eski HTTP bağlantıları veritabanına gömülü olabilir; wp search-replace 'http://siteniz.com' 'https://siteniz.com' ile toplu düzeltebilirsiniz (önce --dry-run).
  4. Üçüncü taraf kaynaklar. Bir reklam, widget veya eski bir kütüphane yalnızca HTTP sunuyorsa, HTTPS destekleyen bir alternatifle değiştirin; HTTPS sunmayan kaynak modern tarayıcılarda zaten çalışmaz.
  5. CSP ile otomatik yükseltme. Sunucunuza Content-Security-Policy: upgrade-insecure-requests başlığı ekleyerek tarayıcının tüm HTTP istekleri otomatik olarak HTTPS’e çevirmesini sağlayabilirsiniz. Bu, kaçan birkaç bağlantı için güçlü bir güvenlik ağıdır. Güvenlik başlıklarını HTTP güvenlik başlıkları rehberimizde ayrıntılı anlattık.

Sertifikanızın ve HTTPS yapılandırmanızın sağlam olduğunu SSL Sorgulama ile; güvenlik başlıklarınızı (CSP dahil) Güvenlik Başlıkları aracıyla kontrol edebilirsiniz.

Bir Daha Yaşanmaması İçin: Önleme

  • Yalnızca HTTPS kaynak yükleyin. Tema/şablon geliştirirken bağlantıları protokol-göreli veya doğrudan HTTPS yazın; asla sabit http:// kullanmayın.
  • upgrade-insecure-requests CSP direktifini kalıcı olarak açık tutun.
  • HSTS ekleyin. HSTS, tarayıcıyı sitenize yalnızca HTTPS ile bağlanmaya zorlayarak birçok karışık içerik ve düşürme senaryosunu baştan engeller.
  • Düzenli denetleyin. Yeni içerik veya eklenti eklerken konsolu kontrol edin; SSL/başlık değişikliklerini SecRadar ile sürekli izleyin.

SSL Var Ama Kilit Yok mu?

“Sertifikam geçerli ama site tam güvenli görünmüyor” durumunun neredeyse her zaman sebebi karışık içeriktir. Eğer sertifikanın kendisiyle ilgili bir hata (süre dolması, isim uyuşmazlığı, zincir hatası) varsa tarayıcı farklı bir uyarı verir; bunları “Bağlantınız Gizli Değil” hatası yazımızda ele aldık. SSL’in temellerini ise SSL Sertifikası Nedir yazısında bulabilirsiniz.

Özetle

Karışık içerik, HTTPS bir sayfanın içine sızan HTTP kaynaklarından doğar; hem kilit simgesini kırar hem de SSL’in sağladığı güvenliği zayıflatır. Çözüm, tüm kaynakları HTTPS’e taşımak, upgrade-insecure-requests ve HSTS ile ağı sıkılaştırmaktır. Birkaç dakikalık bir denetim, sitenizin hem görünürde hem gerçekte tam güvenli olmasını sağlar.

Sitenizi SSL Sorgulama ve Güvenlik Başlıkları araçlarımızla denetleyin. Kurumsal SSL sertifikaları için İHS Telekom SSL hizmetlerini inceleyebilirsiniz.

Sitenizin SSL ve HTTPS yapılandırmasını sürekli denetleyin. SecRadar’a ücretsiz üye olun; sertifikanız, TLS yapılandırmanız veya güvenlik başlıklarınız değiştiğinde Telegram ya da e-posta ile anında uyarı alın.

Leave a Comment