WordPress site taşıma, doğru hazırlıkla yapıldığında 15 dakika süren bir işlemdir. Ancak taşıma sonrasında URL yapısı bozulması, veritabanı bağlantı hatası, tema ve eklenti çakışmaları gibi üç temel sorun ortaya çıkar; bunların her biri sitede erişilemezliğe, hatalı sayfa gösterimine veya SEO kaybına yol açar. Bu rehberde her hatayı gerçek bir senaryo üzerinden anlatıyor, kök nedenini açıklıyor ve uygulanabilir çözüm adımlarını veriyorum.
Site taşıma sonrası en sık karşılaşılan 3 hata — sırasıyla — şunlardır:
- URL yapısı değişikliği ve 404 hataları
- Veritabanı bağlantı hatası
- Tema ve eklenti çakışmaları
URL Yapısı Değişikliği ve 404 Hataları

Taşıma sonrasının en yaygın belirtisi, daha önce indekslenen sayfaların 404 Not Found dönmesidir. Ziyaretçiler eski URL’leri tıkladığında “Sayfa bulunamadı” sayfasıyla karşılaşır, arama motorları bu URL’leri geçersiz sayar ve sıralama kaybı başlar. Kök neden hemen her zaman wp_options tablosundaki siteurl ve home alanlarının eski domain’i tutmasıdır.
Bu iki alan, WordPress’in mutlak URL ürettiği her yerde referans noktasıdır. Yeni domain’i yansıtmadığı sürece site kendi içinde bile çalışmaz: medya yolları, kalıcı bağlantılar, yönlendirmeler — hepsi eski adrese sabitlenir. Sorunu üç adımda çözersiniz:
- wp-config.php’ye geçici tanımlar ekleyin. Veritabanına dokunmadan, eski URL’leri geçersiz kılmak için
wp-config.phpdosyasına şu iki satırı ekleyin:define('WP_HOME', 'https://yeni-domain.com');define('WP_SITEURL', 'https://yeni-domain.com'); - Veritabanını gerçek kayıtla eşitleyin.
wp_optionstablosundaoption_name = 'siteurl'veoption_name = 'home'satırlarını bulupoption_valuesütununu yeni domain ile güncelleyin. Bu adımdan sonra wp-config’teki tanımları silebilirsiniz. - Kalıcı bağlantıları yenileyin.
wp-admin → Ayarlar → Kalıcı Bağlantılarsayfasına girip hiçbir şeyi değiştirmeden “Değişiklikleri Kaydet” butonuna tıklayın. Bu işlem.htaccessdosyasını yeniden yazar ve 404 hatalarını büyük ölçüde temizler.
Eğer eski URL’leri de yeniden yönlendirmek istiyorsanız, WordPress’in Redirection eklentisini kurup search/replace aracıyla veritabanındaki tüm eski domain kalıntılarını toplu şekilde değiştirebilirsiniz. Bu adım SEO sürekliliği için kritiktir; aksi halde tüm backlink değeri kaybedilir.
Veritabanı Bağlantı Hatası

Taşıma sonrası sitenin tamamen beyaz bir sayfada “Error establishing a database connection” mesajıyla açılması, neredeyse her zaman wp-config.php dosyasındaki veritabanı bilgilerinin güncellenmemesinden kaynaklanır. WordPress yeni sunucuda eski sunucunun IP’sini, portunu veya kullanıcı adını arar, bulamaz ve bağlantıyı reddeder.
Çözüm için wp-config.php dosyasını açın ve şu dört sabitin yeni sunucu bilgileriyle eşleştiğinden emin olun:
define('DB_NAME', 'yeni_veritabani_adi');
define('DB_USER', 'yeni_kullanici');
define('DB_PASSWORD', 'yeni_sifre');
define('DB_HOST', 'localhost'); // paylaşımlı hosting ise genelde 'localhost', managed DB ise uzak host
Bu bilgileri yeni sunucunun kontrol panelinden alırsınız (cPanel, Plesk, DirectAdmin veya yönetilen bir panel). Veritabanı sunucusunun localhost dışında bir adresle çalıştığı durumlarda (Amazon RDS, DigitalOcean Managed DB, Cloud SQL gibi) DB_HOST değerine uzak sunucunun IP veya host adı yazılır; güvenlik duvarı kurallarının da yeni sunucudan gelen bağlantılara izin verdiğinden emin olun.
Bilgiler doğru ama hâlâ aynı mesaj geliyorsa, sırayla şu kontrolleri yapın:
- Veritabanı sunucusu çalışıyor mu? SSH veya konsol üzerinden
mysql -u KULLANICI -pile bağlanmayı deneyin. - Veritabanı kullanıcısının
SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, ALTERyetkileri var mı? - Veritabanı kullanıcısı, hedef veritabanı ile eşleştirilmiş mi? cPanel’de “MySQL Databases” bölümünde kullanıcıyı veritabanına eklemek ayrı bir adımdır.
- Disk kotası veya inodes sınırı aşıldı mı? Bazı paylaşımlı hostinglerde disk dolduğunda DB yazma işlemi sessizce kesilir.
Taşıma sonrası ilk 24 saatte bu hata bir kez daha ortaya çıkabilir; bunun nedeni DNS önbelleklerinin eski sunucuya yönlendirmesi değil, MySQL’in henüz yeni sunucuda tam olarak hazır olmamasıdır. SHOW PROCESSLIST; komutuyla aktif sorgu sayısını ve bağlantı durumunu gözlemleyebilirsiniz.
Tema ve Eklenti Çakışmaları

Veritabanı bağlantısı kurulduktan sonra sitenin açılıp “Beyaz Ekran Ölümü” (White Screen of Death, WSOD) vermesi, tema veya eklenti uyumsuzluğuna işaret eder. Yeni sunucunun PHP sürümü, MySQL sürümü veya bellek limitleri eski sunucudan farklıysa, kodda eski sürüm varsayımlarına dayanan bileşenler aniden hata vermeye başlar. En sık tetikleyiciler şunlardır:
- PHP 7.4’te sorunsuz çalışan bir tema, PHP 8.0+ sürümünde
create_function(),magic_quotesgibi kaldırılmış fonksiyonlar yüzünden hata verir. - Bir eklenti,
register_post_type()veyaadd_shortcode()çağrılarınıinithook’undan önce çalıştırarak fatal error tetikler. - Sunucu
memory_limitdeğeri 128M’ın altında, tema veya eklenti 256M istiyor; PHP bellek tükeniyor ve süreç ölüyor. - SSL sertifikası yüklenmemiş;
https://bekleyen kaynaklar mixed-content uyarısı veriyor, bazı JS kütüphaneleri yüklenmiyor.
Sorunu daraltmak için sıralı bir izolasyon protokolü uygulayın:
- WP_DEBUG açın.
wp-config.phpiçindedefine('WP_DEBUG', true);vedefine('WP_DEBUG_LOG', true);satırlarını ekleyin. Hata mesajlarıwp-content/debug.logdosyasına yazılır ve gerçek kök neden görünür. - Tüm eklentileri devre dışı bırakın. FTP/SFTP ile
wp-content/pluginsklasörünün adınıplugins-offolarak değiştirin. Site bu halde açılıyorsa, sorun bir eklentidedir; klasörü eski adına döndürün ve eklentileri tek tek aktifleştirerek suçluyu bulun. - Temayı varsayılan temaya geçirin.
wp-content/themes/aktif-temaklasörünü geçici olarak yeniden adlandırın. WordPress otomatik olaraktwentytwentyfourgibi bir varsayılan temaya düşer. Site açılıyorsa, sorun temadadır;functions.phpdosyasını ve tema sürüm notlarını kontrol edin. - PHP sürümünü doğrulayın.
phpinfo()çıktısı veyawp-admin → Site Sağlığı → Bilgipaneli aktif sürümü gösterir. Temanız veya eklentileriniz “PHP 7.4+” gibi eski bir sürümde test edildiyse, sunucuyu geriye dönük uyumlu moda almak için hosting sağlayıcınızın “MultiPHP Manager” veya “PHP Selector” aracından uygun sürümü seçin. - PHP sürümünü doğrulayın.
phpinfo()çıktısı veyawp-admin → Site Sağlığı → Bilgipaneli aktif sürümü gösterir. Temanız veya eklentileriniz “PHP 7.4+” gibi eski bir sürümde test edildiyse, sunucuyu geriye dönük uyumlu moda almak için hosting sağlayıcınızın “MultiPHP Manager” veya “PHP Selector” aracından uygun sürümü seçin.
Site Taşıma Öncesi Kontrol Listesi
Yukarıdaki hatalarla karşılaşmamak için taşıma öncesinde 5 dakikalık bir hazırlık rutini uygulamak büyük fark yaratır. Bu kontrol listesi, gerçek taşıma adımına geçmeden önce tamamlanması gereken adımları içerir:
- Tam yedek alın. Hem dosyaları (FTP üzerinden
wp-contentklasörü) hem de veritabanını (phpMyAdmin veyamysqldump) ayrı ayrı yedekleyin. Yedekleme eklentileri (UpdraftPlus, BlogVault) işi kolaylaştırır ancak sunucu tarafı yedek her zaman ek bir güvence katmanıdır. - Yeni sunucu gereksinimlerini doğrulayın. WordPress’in önerdiği minimum sürümler PHP 7.4+ ve MySQL 5.7+ (veya MariaDB 10.3+) şeklindedir. Yeni sunucu bu sürümlerin altındaysa, taşıma sonrası hemen uyumsuzluk hataları başlar.
- DNS yayılma süresini planlayın. Domain yöneticisinde TTL (Time To Live) değerini taşımadan 24 saat önce 300 saniyeye düşürün. Bu sayede yeni IP’ye geçiş daha hızlı yayılır; eski sunucu ziyaretçilerin yükünü 24-48 saat taşımaya devam edebilir.
- SSL sertifikasını önceden hazırlayın. Let’s Encrypt otomatik yenileme yapan bir sertifika sağlayıcıdır; yeni sunucuda sertifika henüz kurulmamışsa, site
https://üzerinden ulaşılamaz hale gelir ve tüm bağlantılar mixed-content hatasına düşer. - Test domaini üzerinde doğrulayın. Gerçek domain’i yayına almadan önce,
wp-config.phpiçindeWP_HOMEveWP_SITEURLsabitlerini geçici bir test domaini ile değiştirin. Tüm sayfaları, medyayı ve formları bu test domaininde gözden geçirin; hata yoksa gerçek domain’e dönün.
Sonuç
WordPress site taşıma, üç ana hata kategorisinin (URL yapısı, veritabanı bağlantısı, tema/eklenti çakışması) bilinmesiyle büyük ölçüde risksiz hale gelir. wp-config.php ve wp_options tablosunun yeni ortamla eşleşmesi, kalıcı bağlantıların yenilenmesi, eski URL’lerin yönlendirilmesi ve WP_DEBUG loglarının sistematik okunması, taşıma sonrası sorunların %90’ını ilk bir saat içinde çözer.
Bu adımları üretim ortamına geçmeden önce mutlaka staging (kopyalama) ortamında sınayın. Sitenin tam yedeğini (dosyalar + veritabanı) taşımadan önce alın; bu sayede bir adım ters gittiğinde geri dönmek dakikalar içinde mümkün olur. Özel bir taşıma senaryosu veya hata mesajı için başlık altındaki iletişim kanallarından bana ulaşabilirsiniz.
Bir Cevap Yaz
E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir.