Wordpress Maximum Execution Time Exceeded rehberi: Wordpress sitenizde 'Maximum Execution Time Exceeded' hatası, yavaş sorgular ve sınırlı sunucu.
GİRİŞ
Wordpress sitenizde Maximum Execution Time Exceeded hatası, sunucu işlem süresi sınırının aşılması durumunda görüntülenir. Bu durum, uzun süren veri tabanı sorguları, yoğun eklenti işlemleri veya hatalı tema fonksiyonları nedeniyle ortaya çıkabilir ve ziyaretçi deneyimini olumsuz etkiler. Hatanın erken tespiti ve doğru yapılandırma, sitenizin performansını artırırken arama motoru sıralamalarını da korur.
Uzman İpucu:Hata mesajını doğrudan üretim ortamında göstermek yerine,
wp-config.phpdosyasındakiWP_DEBUG_DISPLAYayarını false yaparak gizleyin ve hatayı log dosyalarına yönlendirin.
TEKNİK ALTYAPI VE YAPILANDIRMA
- *Maximum Execution Time PHP’nin bir betiğin çalışmasına izin verdiği maksimum saniye sayısını belirler. Varsayılan değer genellikle 30 saniyedir. Wordpress içinde bir eklenti ya da tema, bu süreyi aşan bir işlem başlattığında sunucu Fatal error: Maximum execution time of X seconds exceededhatasını verir.
Bu sorunu çözmek için üç temel yapılandırma noktasına odaklanılır:
php.ini dosyasında
max_execution_timedeğerinin artırılması..htaccess dosyası üzerinden PHP ayarlarının geçersiz kılınması.
wp-config.php içinde
set_time_limit()fonksiyonunun kontrollü kullanımı.
Aşağıda her bir yönteme ait örnek konfigürasyonlar yer almaktadır.
# php.ini ayarı
php.ini dosyasını düzenlemek için root yetkileriyle erişin
sudo nano /etc/php/8.2/apache2/php.ini ini max_execution_time = 120
Gerekiyorsa memory_limit de artırılabilir
memory_limit = 256M
Değişiklikleri kaydedip Apache servisini yeniden başlatın:
sudo systemctl restart apache2
# .htaccess üzerinden ayar
WordPress kök dizinindeki .htaccess dosyasına ekleyin
php_value max_execution_time 120 php_value memory_limit 256M
# wp-config.php içinde dinamik limit
<?php
// wp-config.php dosyasının en üst kısmına ekleyin
if ( ! defined( 'ABSPATH' ) ) {
exit; // Direkt erişimi engelle
}
@set_time_limit( 120 );
BİLEŞEN VE DEĞERLENDİRME TABLOSU
| Bileşen | İşlev | Önem Derecesi | Etki |
|---|---|---|---|
php.ini | PHP çekirdeği zaman sınırını belirler | Yüksek | Sunucu genelinde kalıcı çözüm sağlar |
.htaccess | Apache üzerinden PHP ayarlarını geçersiz kılar | Orta | Paylaşımlı hostingde hızlı uygulanabilir |
wp-config.php | WordPress seviyesinde zaman sınırını dinamik ayarlar | Düşük | Tek bir betik için geçici çözüm sunar |
set_time_limit() | Çalışma süresini kod içinde artırır | Düşük | Sadece belirli fonksiyonlarda kullanılmalı |
ADIM ADIM UYGULAMA VE İŞLEM ADIMLARI
-Adım 1:Hata loglarını inceleyin. wp-content/debug.log dosyasında Maximum execution time satırını bulun.
-Adım 2:Sunucu türünü belirleyin (Apache, Nginx, Paylaşımlı).
-Adım 3:php.ini dosyasına erişiminiz varsa, max_execution_time değerini 120 saniyeye yükseltin ve Apache/Nginx servisini yeniden başlatın.
-Adım 4:php.ini erişiminiz yoksa, WordPress kök dizinindeki .htaccess dosyasına yukarıdaki kod bloğunu ekleyin.
-Adım 5:Hala sorun devam ediyorsa, wp-config.php dosyasına @set_time_limit( 120 ); satırını ekleyin.
-Adım 6:Değişiklikleri test edin. Uzun süren bir eklenti işlemini (örnek: veri içe aktarma) çalıştırarak hatanın giderildiğini doğrulayın.
-Adım 7:Sorun tekrar ediyorsa, ilgili eklentiyi devre dışı bırakın ve sorgu optimizasyonu yapın (örnek: WP_Query parametrelerini sınırlandırın).
GELECEĞE YÖNELİK EN İYİ UYGULAMALAR (BEST PRACTICES)
-Kod kalitesine odaklanın:Uzun döngüler ve gereksiz veri çekimlerinden kaçının.
-Veri tabanı indekslerini kontrol edin:WP_Postmeta gibi büyük tablolar için uygun indeksler ekleyin.
-Cache mekanizmalarını etkinleştirin:WP Super Cache veya W3 Total Cache gibi eklentilerle sayfa önbellekleme yapın.
-Sık kullanılan eklentileri güncel tutun:Güncel sürümler genellikle performans iyileştirmeleri içerir.
php.ini ya da .htaccess dosyalarında max_execution_time değerini çok yüksek (örnek: 600) bir seviyeye çıkarmak, DoS saldırılarına açık bir ortam yaratabilir. Değeri ihtiyacınıza uygun, makul bir sınırda tutun ve sunucu kaynaklarını izleyin.
SIKÇA SORULAN SORULAR
# Hata mesajı sadece yönetici panelinde mi görülüyor?
Evet, WP_DEBUG aktif olduğunda hata mesajı yönetici panelinde gösterilir. Üretim ortamında WP_DEBUG_DISPLAY değerini false yaparak hatanın gizlenmesini sağlayabilirsiniz.
# Pay
Sıkça Sorulan Sorular
# Wordpress Maximum Execution Time Exceeded neden önemlidir?
Doğru uygulandığında web sitenizin kullanıcı deneyimini, SEO performansını ve yüklenme hızlarını ciddi oranda iyileştirerek genel site kalitesini artırır.
# Wordpress Maximum Execution Time Exceeded işlemi ne kadar sürede tamamlanır?
Sitenizin karmaşıklığına ve sayfa sayısına bağlı olarak, temel yapılandırma adımları 1 ila 2 saat içinde tamamlanabilmektedir.
# Bu işlem için eklenti kullanmak zorunlu mudur?
Hayır, birçok optimizasyon ve ayar manuel kod düzenlemeleriyle yapılabilir; ancak yönetimi kolaylaştırmak adına güvenilir eklentiler tercih edilebilir.
Wordpress Virüs Temizleme
• YöneticiTürkiye'nin en iyi WordPress virüs temizleme hizmetini sizlere vererek, bulaşan tüm zararlı kodları veritabanınız bozulmadan temizliyor ve sitenizi hem güvenli hem de eski performansına kavuşturuyoruz.
WordPress Sitenizde Güvenlik Tehdidi mi Var?
Siber güvenlik mühendislerimiz 2 saat içinde sitenizi derinlemesine tarayıp tüm zararlı yazılımları temizlesin.