“WordPress sitenizin canonical URL’sinde hem http:// hem de https:// görünüyorsa, bu genellikle sitenizin ayarlarında bir yanlış yapılandırma veya bir tema/eklenti çakışması olduğunu gösterir. Bu sorun, SEO performansını ve kullanıcı deneyimini olumsuz etkileyebilir. İşte nasıl teşhis edip düzeltebileceğiniz:
Bu Neden Oluyor?
Yanlış Site URL Ayarları
WordPress ayarlarınızdaki WordPress Adresi (URL) veya Site Adresi (URL) alanları yanlış yapılandırılmış olabilir.
Örnek: Yanlışlıkla http://https://example.com
olarak ayarlarsanız, canonical URL de bunu yansıtacaktır.
Karışık İçerik veya HTTP/HTTPS Yönlendirme Sorunu
Eklentilerden (ör. önbellek, SEO veya SSL eklentileri) kaynaklanan http:// ve https:// çakışmaları bu soruna yol açabilir.
Yanlış yapılandırılmış bir SSL veya yönlendirme ayarı da aynı şekilde problemi tetikleyebilir.
Tema veya Eklenti Canonical Etiketi Yanlış Yapılandırması
Tema veya bir SEO eklentisi (Yoast SEO, Rank Math gibi) canonical etiketi yanlış oluşturuyor olabilir.
Veritabanı Bozulması
Veritabanındaki (ör. wp_options
tablosu) URL değerleri bozuk veya yanlış ayarlanmışsa bu sorun ortaya çıkabilir.
Kodlanmış URL’ler
Tema veya eklenti dosyalarına hardcoded (kodlanmış) canonical URL eklenmişse, bu da çift görünüme neden olabilir.
Sorunu Düzeltmek İçin Adımlar
1. WordPress URL Ayarlarını Kontrol Edin ve Düzeltin
WordPress yönetici panelinde Ayarlar → Genel bölümüne gidin.
Her iki alanın da doğru olduğundan emin olun:
- WordPress Adresi (URL):
https://example.com
- Site Adresi (URL):
https://example.com
Herhangi bir ekstra http://
veya https://
önekini kaldırın.
İpucu: Siteniz SSL ile korunuyorsa her zaman https://
kullanın.
2. Önbelleği Temizleyin
Eğer önbellekleme etkinse:
- WP Rocket, W3 Total Cache veya LiteSpeed Cache gibi önbellek eklentileri ile web sitenizin önbelleğini temizleyin.
- Ayrıca tarayıcı önbelleğinizi de temizlemeyi unutmayın.
3. SEO Eklentisi Ayarlarını Kontrol Edin
Eğer bir SEO eklentisi kullanıyorsanız (ör. Yoast SEO, Rank Math veya All in One SEO Pack):
- SEO eklentisi ayarlarına gidin.
- Canonical URL yapılandırmasını kontrol edin:
- Doğru URL’yi (
https://example.com
) kullandığından emin olun. - Manuel olarak girilmiş
http://https://
değerlerini kaldırın.
- Doğru URL’yi (
- Değişiklikleri kaydedin ve canonical URL’i yeniden kontrol edin.
4. SSL Eklentisi Yapılandırmasını Kontrol Edin
Eğer Really Simple SSL gibi bir SSL eklentisi kullanıyorsanız:
- Eklenti ayarlarını kontrol edin ve çakışan yönlendirme kuralları veya karışık içerik uyarıları olmadığından emin olun.
- Herhangi bir sorunu düzeltmek için SSL kurulum sihirbazını yeniden çalıştırın.
5. Eklenti Çakışmalarını Test Edin
- Tüm eklentileri geçici olarak devre dışı bırakın.
- Sorunun çözülüp çözülmediğini görmek için canonical URL’i kontrol edin.
- Sorunu yaratan eklentiyi bulmak için eklentileri teker teker yeniden etkinleştirin.
6. Tema Dosyalarını Kontrol Edin ve Güncelleyin
Sorun devam ediyorsa, temanızda hardcoded (kodlanmış) canonical URL’ler olabilir:
- Görünüm → Tema Düzenleyici bölümüne gidin.
header.php
veya benzeri dosyalarda aşağıdaki gibi hardcoded canonical etiketlerini kontrol edin:<link rel="canonical" href="http://https://example.com">
- Bunu şu şekilde değiştirin:
<link rel="canonical" href="<?php echo esc_url(home_url('/')); ?>">
- Değişiklikleri kaydedin.
7. Veritabanı Kayıtlarını Düzenleyin
Sorun veritabanındaysa:
- phpMyAdmin veya WP-Optimize gibi bir veritabanı yönetim eklentisi ile
wp_options
tablosunu inceleyin. siteurl
vehome
seçeneklerini kontrol edin.- Değerlerin doğru (
https://example.com
) vehttp://https://
içermediğinden emin olun.
Kontrol için SQL sorgusu:
SELECT option_name, option_value FROM wp_options WHERE option_name IN ('siteurl', 'home');
Güncelleme için SQL sorgusu:
UPDATE wp_options SET option_value = 'https://example.com' WHERE option_name = 'siteurl';
UPDATE wp_options SET option_value = 'https://example.com' WHERE option_name = 'home';
8. Yönlendirme Kurallarını Doğrulayın
- Apache sunucusu için
.htaccess
dosyasını veya Nginx konfigürasyon dosyalarını kontrol edin. - Çakışan kurallar olmadığından emin olun.
HTTPS için örnek .htaccess:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</IfModule>
- Kurallarda
http://https://
referanslarının olmadığından emin olun. .htaccess
güncellendikten veya Nginx sunucu yeniden başlatıldıktan sonra siteyi test edin.
9. Karışık İçerik (Mixed Content) Hatalarını Kontrol Edin
- Tarayıcı geliştirici araçlarını kullanarak http:// üzerinden yüklenen CSS/JS/resim gibi kaynakları tespit edin.
- Bunları düzeltmek için:
- Göreli URL’ler kullanın veya tüm kaynakların
https://
üzerinden yüklendiğinden emin olun. - Veritabanındaki URL’leri search-and-replace eklentisi (ör. Better Search Replace) ile güncelleyin.
- Göreli URL’ler kullanın veya tüm kaynakların
Son Adım: Çözümü Test Edin
- Google Search Console veya Screaming Frog SEO Spider gibi araçlarla canonical etiketin doğru olup olmadığını doğrulayın.
- Siteyi yeniden tarayarak hiçbir
http://https://
URL’nin kalmadığından emin olun.