WPHizmet

Mixed Content (Karışık İçerik) Uyarısı

Yayınlandı:
Son teknik kontrol:
1.5 dk okuma
Kısmi sorunWordPress
Mixed Content: The page at "https://…" was loaded over HTTPS, but requested an insecure resource "http://…"

Belirtiler

  • Adres çubuğunda kilit yerine uyarı simgesi veya “Güvenli değil” ifadesi
  • HTTPS’e geçtikten sonra tasarım bozuldu, bazı menüler veya kaydırıcılar çalışmıyor
  • Tarayıcı konsolunda “Mixed Content” ile başlayan uyarılar
  • Bazı görseller eski sayfalarda http adresiyle görünüyor

Kısa cevap

Karışık içerik, https ile açılan bir sayfanın bazı dosyaları (görsel, betik, stil, yazı tipi) hâlâ http adresinden çağırması demektir. Tarayıcı görsel gibi dosyaları https’e yükseltmeye çalışır; betik ve stil dosyalarını ise engeller, bu yüzden tasarım bozulabilir ve adres çubuğundaki kilit simgesi kaybolabilir. WordPress’te neden neredeyse her zaman HTTPS geçişinden sonra veritabanında, temada veya bir eklenti ayarında kalan eski http adresleridir. Kalıcı çözüm, bu adresleri güvenli bir arama-değiştirmeyle https yapmaktır.

Önemli noktalar

  • Karışık içerik bir sunucu hatası değil, sayfanın içindeki eski http bağlantılarıdır.
  • Betik ve stil dosyaları engellenir; bu yüzden karışık içerik görünümü ve işlevi bozabilir.
  • Site adresleri (Ayarlar › Genel) https değilse WordPress bağlantıları yanlış üretmeye devam eder.
  • Veritabanındaki adresler düz metin aramasıyla değil, serileştirilmiş veriyi koruyan bir araçla değiştirilmelidir.

Kaynağı bulmak

  1. Konsolu açın

    F12 ile geliştirici araçlarını açıp Console sekmesine bakın. Her “Mixed Content” satırı, http ile çağrılan dosyanın tam adresini yazar.

  2. Adresin nereden geldiğine bakın

    wp-content/uploads ile başlıyorsa içerikteki görseldir (veritabanı). Tema klasörünü gösteriyorsa temaya gömülüdür. Dış bir alan adıysa bir eklenti veya gömülü kod çağırıyordur.

  3. Site adreslerini kontrol edin

    Ayarlar › Genel’deki “WordPress adresi” ve “Site adresi” https ile başlamalıdır. wp-config.php’de WP_HOME/WP_SITEURL tanımlıysa değer oradan gelir.

Veritabanındaki adresleri güvenle değiştirmek

WordPress bazı ayarları “serileştirilmiş” biçimde saklar; bu biçimde metnin uzunluğu da kayıtlıdır. phpMyAdmin’de düz metin arama-değiştirme bu uzunlukları bozar ve ayarların kaybolmasına yol açabilir. WP-CLI search-replace komutu serileştirilmiş veriyi doğru işler. Önce yedek alın, sonra deneme modunda çalıştırın:

Önce deneme (--dry-run), sonra gerçek çalıştırma
wp search-replace 'http://alanadiniz.com' 'https://alanadiniz.com' --skip-columns=guid --dry-run
wp search-replace 'http://alanadiniz.com' 'https://alanadiniz.com' --skip-columns=guid

guid sütunu atlanır: yazıların benzersiz kimliğidir ve RSS okuyucuların aynı yazıyı yeniden “yeni” saymaması için değiştirilmez. Komut satırı erişiminiz yoksa serileştirilmiş veriyi destekleyen bir arama-değiştirme eklentisi aynı işi yapar; yine önce yedek alın.

Temaya ve eklentilere gömülü adresler

  • Tema dosyalarında veya özelleştirici CSS’inde http:// ile yazılmış görsel ve yazı tipi adreslerini https:// yapın ya da site içi göreli yol kullanın.
  • Sayfa oluşturucu kullanıyorsanız onun “URL değiştir” aracını çalıştırın ve CSS dosyalarını yeniden oluşturun; bu araçlar kendi verilerini ayrıca saklar.
  • Önbellek eklentisinin ve CDN’in önbelleğini temizleyin; aksi hâlde düzeltilmiş sayfa yerine eski kopya sunulur.

Sık sorulan sorular

Görseller https ile açılıyor, yine de uyarı alıyorum.
Tarayıcı görsel gibi dosyaları otomatik olarak https’e yükseltir; sayfa çalışır görünür ama kaynakta hâlâ http adresi vardır. Uyarının kaynağı çoğunlukla bir betik, stil dosyası veya yazı tipidir — konsoldaki satırlar hangisi olduğunu söyler.
Bir “SSL düzeltme” eklentisi kurmak yeterli mi?
Bu tür eklentiler sayfa çıktısındaki adresleri her istekte değiştirerek belirtiyi gizler. Kısa süre için işe yarar ama her sayfada ek iş yapar ve kök neden veritabanında kalır. Kalıcı çözüm adresleri bir kez düzeltmektir.
Karışık içerik SEO’yu etkiler mi?
Doğrudan bir sıralama cezası yoktur; ancak engellenen betik ve stiller sayfanın görünümünü ve kullanılabilirliğini bozar, kilit simgesinin kaybolması da ziyaretçi güvenini düşürür.

Kaynaklar ve teknik referanslar

Bu hatayı çözemediyseniz

İlgili içerikler