Beyaz Sayfa Hatasının Anlamı
WordPress’te karşılaşılan “Beyaz Sayfa Hatası” veya “White Screen of Death (WSOD)”, PHP kodlarında bir hata olduğunda ortaya çıkar ve kullanıcılara sadece beyaz bir sayfa gösterilir. Bu hata, WordPress’in PHP komutlarını yürütememesi veya PHP’nin kodu işlerken bir hata ile karşılaşması nedeniyle meydana gelir. Bu hatanın birkaç olası nedeni ve çözüm yolu vardır.
Olası Nedenler
1. PHP Bellek Sınırı: WordPress, PHP’nin belirli bir bellek miktarını kullanmasına izin verir. Bu sınır aşıldığında, beyaz sayfa hatası oluşabilir.
2. PHP Hataları: Kötü yazılmış bir eklenti, tema veya kod parçası, PHP’nin çalışmasını engelleyebilir.
3. Sunucu Sorunları: Sunucu tarafında yapılan güncellemeler veya yapılandırma değişiklikleri, WordPress’in düzgün çalışmasını engelleyebilir.
4. Uyumsuzluklar: WordPress çekirdeği, temalar veya eklentiler arasında sürüm uyumsuzlukları, beyaz ekran hatasına yol açabilir.
Çözüm Yolları
PHP Bellek Sınırının Artırılması
PHP’nin bellek sınırı, `wp-config.php` dosyasına eklenen bir satır ile artırılabilir:
“`php
define(‘WP_MEMORY_LIMIT’, ‘256M’);
“`
Bu, WordPress’in PHP’nin 256MB bellek kullanmasına izin verir. Ancak, bu değeri sunucu izin verdiği ölçüde artırabilirsin.
PHP Hatalarını İnceleme
– Hata Günlüklerini Kontrol Et: Sunucunun PHP hata günlüklerini inceleyerek, hangi dosya veya satırda hata olduğunu bulabilirsin. Çoğu sunucuda bu günlükler `/var/log/apache2/error.log` veya benzeri bir dizinde bulunur.
– WP_DEBUG Modunu Etkinleştir: `wp-config.php` dosyasına `define(‘WP_DEBUG’, true);` satırını ekleyerek, hataların ekranda gösterilmesini sağlayabilirsin. Bu, hatanın nerede olduğunu görmeni kolaylaştırır.
“`php
define(‘WP_DEBUG’, true);
define(‘WP_DEBUG_LOG’, true);
define(‘WP_DEBUG_DISPLAY’, false);
@ini_set(‘display_errors’, 0);
“`
Eklenti ve Temaları Kontrol Etme
– Tüm Eklentileri Devre Dışı Bırak: FTP veya dosya yöneticisi üzerinden, `wp-content/plugins` dizinindeki tüm eklenti klasörlerinin adını değiştirerek tüm eklentileri devre dışı bırak. WordPress yönetici paneline girmeyi dene. Eğer sorun çözülmüşse, eklentileri tek tek yeniden aktif ederek hangi eklentinin sorun yarattığını bul.
– Temayı Değiştir: Aynı şekilde, varsayılan bir tema (örneğin, Twenty Nineteen) ile değiştir. Eğer sorun çözülürse, kullandığın temada bir sorun var demektir.
Sunucu Tarafında Kontrol
– PHP Sürümünü Kontrol Et: Sunucu PHP sürümünü WordPress’in gereksinimlerine uygun olup olmadığını kontrol et. WordPress’in minimum PHP sürümü gereksinimleri, her sürümde değişebilir.
– .htaccess Dosyasını Kontrol Et: WordPress’in `.htaccess` dosyasını silerek veya yeniden adlandırarak, bu dosyadan kaynaklanan sorunları ortadan kaldırabilirsin. WordPress, yeni bir `.htaccess` dosyası oluşturacaktır.
PHP Yapılandırması
– PHP.ini Dosyasını Düzenle: PHP’nin `php.ini` dosyasını düzenleyerek, `memory_limit`, `max_execution_time` gibi değerleri artırabilirsin. Bu, PHP’nin daha fazla bellek kullanmasına ve daha uzun süre çalışmasına izin verir.
“`ini
memory_limit = 256M
max_execution_time = 300
“`
Veritabanı ve WordPress Çekirdeği
– Veritabanı Kontrolü: Veritabanında bozukluklar veya uyumsuzluklar olabilir. Veritabanını onarmak için `wp-admin/maint/repair.php` dosyasını oluşturup, bu dosyaya giderek onarımı başlat.
– WordPress Çekirdeği Güncellemesi: WordPress çekirdeğini manuel olarak veya otomatik güncelleme ile en son sürüme yükselt. Bu, bilinen hataların çözülmesine yardımcı olabilir.
Son Kontroller
– Cache Temizleme: Eğer site önbellekleme kullanıyorsa, bu önbelleği temizle. WordPress önbelleği, eklenti önbellekleri veya sunucu tarafındaki önbellekler sorun yaratabilir.
– FTP ve Dosya İzinleri: WordPress dosya ve dizinlerinin doğru izinlere sahip olduğundan emin ol. Genellikle, dosyalar için `644` ve dizinler için `755` izinleri önerilir.
WordPress PHP beyaz sayfa hatası, genellikle yukarıda belirtilen adımların bir kombinasyonu ile çözülür. Sorunun kaynağını bulmak ve düzeltmek, sistematik bir yaklaşım gerektirir. Her bir adımı dikkatlice uygulayarak ve sonuçları gözlemleyerek, beyaz sayfa hatasından kurtulmak mümkündür.