Kısa cevap: HTTPS'e geçmek bir adres değişikliğidir. Arama motoru için http:// ve https:// iki ayrı adres kümesidir. Üç katmanın aynı yöne bakması gerekir: her eski adresten yeni karşılığına 301 yönlendirmesi, sayfaların rel=canonical etiketi ve site haritasıyla iç bağlantılar. Bu üçü hizalanmazsa sinyaller bölünür, geçici bir düşüş yaşanır ve düşüş kendi kendine toparlanmaz.
Protokol değişikliği neden adres değişikliğidir
Bir insan için http:// ve https:// aynı siteyi gösterir. Arama motoru için göstermez: protokol, adresin ayrılmaz bir parçasıdır. Dolayısıyla sertifikayı kurup HTTPS'i yayına aldığınız anda siteniz ikiye katlanmış olur. Aynı içerik iki adreste erişilebilir durumdaysa, yıllar içinde biriken bağlantı ve tıklama sinyalleri de iki kümeye dağılır.
Geçişten sonra görülen düşüş genelde bundan çıkar, sertifikadan çıkmaz. Arama motorunun yeni adres kümesini taraması, eski adreslerin yerini aldığını anlaması ve sıralamayı yeni adrese taşıması zaman alır. Bu süreyi kısaltmanın yolu, her katmanda tek ve tutarlı bir cevap vermektir.
Üç katman şöyle çalışır. 301 yönlendirmesi sunucu düzeyinde “bu adres kalıcı olarak şuraya taşındı” der. rel=canonical sayfanın kendi içinden “benim asıl adresim şudur” der. Site haritası ve iç bağlantılar ise taramanın hangi adreslerden yürüyeceğini belirler. Üçü farklı şey söylerse arama motoru hangisine inanacağını kendi seçer ve seçimi sizin tercihinizle aynı olmayabilir.
Geçişte güncellenecek yerlerin tam listesi
Aşağıdaki tablo, “sertifikayı kurdum, bitti” sanılan yerde aslında kalan işi gösterir. Atlanan her satır bir belirti üretir.
| Yer | Ne değişir | Atlanırsa ne olur |
|---|---|---|
| Şablondaki varlık adresleri | Stil, betik ve görsel adresleri https olur | Karışık içerik uyarısı; stil ve betik engellenirse sayfa bozulur |
| Veritabanında gömülü adresler | İçerik alanlarındaki http bağlantı ve görselleri | Tek tek sayfalarda kilit kaybolur, sebebi bulunamaz |
| Canonical etiketleri | Her sayfanın canonical değeri https olur | Sayfa kendi eski adresini işaret eder, yönlendirmeyle çelişir |
| Site haritası | Bütün adresler https olarak yeniden üretilir | Tarayıcı eski adresleri gezer, yönlendirme bütçesi harcanır |
| robots.txt içindeki sitemap satırı | Sitemap adresi https olur | Harita eski protokolde bulunur, yeni mülk boş görünür |
| İç bağlantılar | Menü, gövde ve alt alanlardaki bağlantılar | Her tıklama bir yönlendirme atlaması üretir, sayfa yavaşlar |
| Yapılandırılmış veri içindeki adresler | url, logo, image ve sameAs değerleri | Şema eski adresi bildirir, zengin sonuç eşleşmesi zayıflar |
| Search Console mülkü | Alan adı mülkü kurulur ya da https mülkü eklenir | Yeni adreslerin verisi hiç görünmez, düşüş ölçülemez |
| Analiz aracı ayarları | Varsayılan site adresi ve hedef tanımları | Yönlendirme sonucu kaynak bilgisi kaybolabilir |
| Reklam ve e-posta şablonlarındaki bağlantılar | Kampanya ve bülten adresleri https olur | Ücretli trafik fazladan atlama yapar, dönüşüm ölçümü bulanır |
| Dış servislerin webhook adresleri | Ödeme, kargo ve form servislerinin çağırdığı uçlar | Bildirimler sessizce düşer; sipariş durumu güncellenmez |
Search Console tarafı: hangi mülk türü ve hangi araç
Search Console'da iki mülk türü vardır ve geçişte seçim önemlidir. Alan adı (Domain) mülkü http ve https ile birlikte bütün alt alan adlarını kapsar, ancak YALNIZCA DNS doğrulamasıyla kurulur. URL-prefix mülkü ise tek protokol ve tek yol içindir ve DNS yöntemi kullanılamaz. Bu yüzden HTTPS'e geçerken alan adı mülkü kurmak, iki protokolü ayrı ayrı izleme zahmetini baştan ortadan kaldırır: tek mülkte eski ve yeni adres kümesini bir arada görürsünüz.
İkinci nokta bir yanlış anlaşılmayı düzeltir: Search Console'daki “Adres değişikliği” (Change of address) aracı ALAN ADI değişikliği içindir, protokol değişikliği için kullanılmaz. HTTPS'e geçtiğinizde bu aracı aramayın; yapılacak iş, HTTPS mülkünü eklemek ve site haritasını oraya göndermektir. Eski HTTP mülkünü hemen silmeyin – yönlendirmelerin ve eski adreslerin düşüşünü bir süre oradan izlemek işe yarar.
Adım adım: geçişi sırayla yapmak
- Sertifikayı kurun ve siteyi HTTPS üzerinden yönlendirme olmadan açılır hâle getirin. Yönlendirme eklemeden önce https adresinin tek başına doğru çalıştığını görün; aksi hâlde hatayı yönlendirmenin arkasında arayıp bulamazsınız.
- Karışık içeriği temizleyin. Şablondaki ve veritabanındaki http adreslerini düzeltin. Bu adımı geçişten önce bitirmek, yönlendirmeyi açtığınızda bir sürprizle karşılaşmamanızı sağlar.
- Canonical etiketlerini https yapın. İçerik yönetim sistemlerinin çoğunda bu, site adresi ayarını güncellemekle olur; elle yazılmış şablonlarda etiketi tek tek kontrol etmek gerekir.
- 301 yönlendirmesini tek kuralda kurun. Her adres KENDİ karşılığına gitmeli. Kural, yolu ve sorgu dizesini koruyarak yalnızca protokolü değiştirecek biçimde yazılır.
- İç bağlantıları ve site haritasını güncelleyin. Site haritasını yeniden üretin, robots.txt içindeki sitemap satırını https olarak yazın ve menüdeki sabit bağlantıları gözden geçirin.
- Search Console'da alan adı mülkünü kurun ya da https mülkünü ekleyin. Alan adı mülkü için DNS doğrulaması gerekir; kaydın yayılması bir iki gün sürebilir, bu yüzden bu adımı geçiş gününe bırakmayın.
- Site haritasını yeni mülke gönderin ve kapsam raporunu izleyin. İlk günlerde “yönlendirmeli” olarak işaretlenen eski adreslerin sayısı artar, sonra düşer. Bu beklenen davranıştır.
- Dış bağımlılıkları tek tek geçirin. Analiz aracı ayarları, reklam bağlantıları, e-posta şablonları ve ödeme veya kargo servislerinin webhook adresleri. Bu adım atlanırsa sorun aramada değil, siparişlerde çıkar.
Gerçek yönlendirme kuralları
Aşağıdaki örneklerde ornekfirma.com bir YER TUTUCUDUR; kendi alan adınızı yazmanız gerekir. Kuralların yapısı gerçektir.
# Apache, .htaccess dosyasinda
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://ornekfirma.com/$1 [R=301,L]
# nginx, 80 portunu dinleyen sunucu blogunda
server {
listen 80; # sifresiz istekleri karsilar
server_name ornekfirma.com www.ornekfirma.com; # ikisi de yer tutucudur
return 301 https://$host$request_uri; # yolu ve sorgu dizesini korur
}Apache örneğinde RewriteCond %{HTTPS} off satırı kuralı yalnızca şifresiz isteklere uygular; bu olmadan kural kendi kendini tetikleyip döngüye girer. [R=301,L] işareti yönlendirmenin kalıcı olduğunu ve kural zincirinin orada durduğunu söyler. nginx örneğinde $host$request_uri yolu ve sorgu dizesini olduğu gibi taşır, yani her adres kendi karşılığına gider.
Yönlendirme zinciri: üç atlamayı bire indirmek
Geçişlerin en sessiz hatası budur. Kuralları ayrı ayrı eklerseniz şöyle bir zincir oluşur: http://www adresi https://www adresine, o da https:// köküne gider. Üç atlama demektir. Her atlama ek bir istek, ek bir gecikme ve tarama tarafında ek bir maliyettir; mobil bağlantıda bu fark ölçülebilir hâle gelir.
Doğrusu tek kuralda hem protokolü hem de www tercihini aynı anda çözmektir: şifresiz ya da yanlış ana makineyle gelen her istek, tek bir 301 ile doğru protokol ve doğru ana makine birleşiminin karşılığına gönderilir. Geçişten sonra bunu ölçmek kolaydır: bir adres denetçisiyle dört varyantı (www'li ve www'siz, http ve https) sırayla isteyip kaç atlama olduğunu sayın. Hedef, hepsinde bir atlamadır.
Yaygın hatalar
- 301 yerine 302 kullanmak. 302 geçici taşınma demektir; arama motoru eski adresi bırakmaz ve sinyaller yeni adrese taşınmaz. Taşınma kalıcıysa kod 301 olmalıdır.
- Bütün adresleri ana sayfaya yönlendirmek. Kolay görünür, pahalıya gelir: her iç sayfa ana sayfaya giderse o sayfaların sıralaması taşınmaz, silinmiş gibi davranılır. Her adres kendi karşılığına gitmelidir.
- Canonical değerini http olarak bırakmak. Yönlendirme https der, sayfa http der. Bu çelişkide arama motoru kendi seçimini yapar ve eski adresi tercih edebilir; düşüş aylarca sürer.
- Site haritasını güncellememek. Harita eski adresleri bildirmeye devam ederse tarayıcı sürekli yönlendirmeye çarpar; yeni adreslerin taranması gecikir.
- robots.txt içindeki sitemap satırını eski protokolde bırakmak. Harita bulunur ama eski kümeyi gösterir. Yeni mülkte “gönderilen adres yok” görünür ve sebebi uzun süre fark edilmez.
- Geçişten sonra karışık içerik uyarılarını görmezden gelmek. Kilit işareti olmayan bir sayfa, ziyaretçi için “güvenli değil” etiketiyle açılır. Form ve sepet sayfalarında bu doğrudan dönüşüm kaybıdır.
- Düşüşü görüp panikle yönlendirmeyi geri almak. Geri alma düşüşü ikiye katlar: bu kez arama motoru ikinci bir adres değişikliğiyle uğraşır ve iki kümenin ikisi de güven kaybeder. Doğru hamle kuralları doğrulamak ve beklemektir.
Ne zaman uzmana bırakmalı
Küçük bir tanıtım sitesinde geçiş tek oturumda biter. İşin boyutu şu durumlarda değişir: sitede binlerce adres varsa ve bunların bir kısmı zaten yönlendirilmişse (eski bir adres yapısından gelen zincirler birikir), çok dilli ya da çok alan adlı bir yapı varsa, ödeme ve kargo servisleri sunucunuzu çağırıyorsa, ya da geçmişte kimin hangi yönlendirmeyi neden yazdığı bilinmiyorsa. Bu dördünün bir arada olduğu sitelerde geçiş bir yapılandırma işi değil, bir envanter işidir.
Geçişi ölçerek yapmak isterseniz SEO çalışmamız yönlendirme haritasını adres adres kurar, atlama sayısını ölçer ve geçiş sonrası kapsam raporunu takip eder. Sorularınızı iletişim sayfasından iletebilirsiniz.
Devamını okumak için
Sertifika tarafında kilit işareti hâlâ çıkmıyorsa SSL kurulumu ve karışık içerik yazısı hangi kaynağın engellendiğini tablo hâlinde veriyor. Aynı kuralda www tercihini de çözmek için www mi, www'suz mu yazısına bakın. Mülk kurulumu ve site haritası gönderimi için Search Console kurulumu ve site haritası yazısı sırayı anlatıyor. Geçişten sonra sayfalar hâlâ görünmüyorsa sitem Google'da çıkmıyor yazısı sebepleri sırayla eliyor. Tüm başlıklar blog sayfamızda, çalışma alanlarımız ana sayfamızda.