O R H A N K A R T O P U

Bir güncelleme ya da içe aktarma işlemi sırasında ekrana ‘Maximum execution time of … seconds exceeded’ yazısı düşüyor. İşlem yarıda kalıyor ve siz ne olduğunu anlamaya çalışıyorsunuz. Olan şu. Çalışan script, sunucunun ona tanıdığı süreyi aştı ve PHP güvenlik gereği onu durdurdu.

Her PHP scriptinin çalışabileceği bir zaman üst sınırı vardır. Bu sınır, sonsuz döngüye giren ya da takılıp kalan bir kodun sunucuyu tek başına kilitlememesi için konur. Normal şartlarda bir sayfa milisaniyeler içinde yüklenir. Ama büyük bir içe aktarma, kapsamlı bir yedek ya da yavaş bir eklenti bu süreyi rahatça aşabilir. İşte o an bu hata çıkar.

Süreyi ne aşar

  • Büyük içe aktarma ve dışa aktarma işlemleri. Binlerce satırlık bir dosyayı tek seferde işlemek süreyi doldurur.
  • Toplu güncellemeler. Çok sayıda eklenti ya da ürünü aynı anda güncellemek uzun sürer.
  • Yavaş çalışan bir eklenti ya da ağır bir veritabanı sorgusu
  • Barındırma paketinde max_execution_time değerinin baştan düşük tutulması, örneğin 30 saniye

Çözüm için sırayla

  1. En doğrudan yol max_execution_time değerini yükseltmek. php.ini dosyanıza erişiminiz varsa max_execution_time satırını 300 gibi bir değere çekin. Bu, scriptlere beş dakikaya kadar çalışma izni verir ki çoğu ağır işlem için yeter.
  2. php.ini’ye erişemiyorsanız hosting panelinizdeki PHP ayarları bölümünü kullanın. Neredeyse tüm barındırma panellerinde bu değeri arayüzden değiştirebileceğiniz bir alan vardır.
  3. Bazı sunucularda .htaccess dosyasına ‘php_value max_execution_time 300’ satırı eklemek de işe yarar. Her sunucu bunu kabul etmez ama denemeye değer. Ekledikten sonra site açılmıyorsa satırı geri çıkarın.
  4. wp-config.php üzerinden de deneyebilirsiniz. Dosyaya set_time_limit(300); benzeri bir satır eklemek bazı barındırma ortamlarında etkili olur, ancak sunucu yapılandırması buna izin vermiyorsa görmezden gelinir.
  5. Asıl çözüm çoğu zaman işi küçültmek. Büyük bir içe aktarma dosyasını parçalara bölüp birer birer yükleyin. İçe aktarma eklentilerinin çoğu zaten parçalı çalışma özelliği sunar, onu açın.
  6. Hata belirli bir eklentiyle çıkıyorsa o eklenti yavaş çalışıyor olabilir. Eklentileri tek tek pasif ederek hangisinin süreyi doldurduğunu bulun. Gerekirse hafif bir alternatifine geçin.
  7. Değer yükseltmelerine rağmen sorun sürüyorsa barındırma desteğine danışın. Bazı sunucular php.ini ya da .htaccess ile yapılan değişiklikleri sabit bir üst sınırla geçersiz kılar, bunu yalnızca onlar değiştirebilir.

Buradaki ince nokta şu. Süreyi uzatmak işlemin bitmesini sağlar ama yavaşlığın kendisini çözmez. Bir güncelleme on dakika sürüyorsa bir yerde bir tıkanıklık var demektir. Süreyi uzatmayı geçici bir çözüm, asıl işi hızlandırmayı kalıcı çözüm olarak düşünün.

Değişikliğin gerçekten işe yarayıp yaramadığını görmek isterseniz WordPress panelinde Araçlar altındaki Site Sağlığı sayfasına bakabilirsiniz. Sunucu bilgileri arasında geçerli max_execution_time değeri yazar. Orada hâlâ eski, düşük rakamı görüyorsanız, yaptığınız değişiklik bir yerde geçersiz kılınıyor demektir. Böyle bir durumda genellikle sunucunun kendi yapılandırması sizin ayarınızın önüne geçiyordur ve bunu yalnızca barındırma firması değiştirebilir. Bu yüzden önce hangi yöntemin gerçekten etki ettiğini doğrulamak, boşuna uğraşmaktan kurtarır.

Yeniden yaşamamak için

Büyük içe aktarma ve yedekleme işlerini hep parçalı yapın, tek seferde devasa dosyalarla uğraşmayın. Eklenti ve temalarınızı birikmeden, azar azar güncelleyin. Veritabanınızı ara ara temizlemek sorguları hızlandırır ve süre aşımı riskini düşürür. Barındırma paketinizin tanıdığı süre siteniz için sürekli dar kalıyorsa, daha geniş kaynak veren bir plana geçmeyi düşünebilirsiniz.

Bu hata genelde tek bir ayarla ya da işi parçalara bölerek aşılır. Değişiklikleri yaptığınız halde sunucu hâlâ sizi sabit bir sınırla durduruyorsa ve işin içinden çıkamıyorsanız, bir uzmana danışmak zaman kazandırır.

Bu işleri kendiniz yapmak yerine profesyonel destek isterseniz, WordPress bakım ve teknik destek hizmetime göz atabilirsiniz.

Bu konunun tüm rehberi: WordPress Hataları ve Çözümleri

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

WhatsApp