Bu hata neden oluşur?
Nedenler, sahada karşılaştığımız sıklığa göre sıralıdır.
- 01
PHP işçi sayısı (pm.max_children) doluyor
Çok sıkPHP-FPM, aynı anda çalışabilecek PHP süreç sayısını sınırlar. Bu sınır dolduğunda sunucu yeni istekleri kabul edemez ve 503 döner.
- 02
Ani trafik artışı ya da bot taraması
SıkKampanya, haber paylaşımı ya da yoğun bot trafiği, normal kapasitenin üzerinde eşzamanlı istek oluşturur.
- 03
Eklenti ya da tema aşırı kaynak tüketiyor
SıkVeritabanına çok sorgu gönderen, ağır işlem yapan bir eklenti tek başına tüm PHP işçilerini kilitleyebilir.
- 04
Ters proxy veya CDN zaman aşımı
SıkNginx, Varnish ya da bir CDN, arka uçtan (origin sunucu) yanıt gelmesini beklerken süre aşımına uğrarsa 503 üretir. [kullanılan CDN/proxy ürünü]
- 05
Sunucu bakımda ya da geçiş sürüyor
Ara sıraHosting firması planlı bakım yapıyorsa ya da site başka sunucuya taşınıyorsa bu hata geçici olarak görünür.
- 06
Veritabanı sunucusu yanıt vermiyor
NadirenMySQL/MariaDB sürecinde kilitlenme ya da bağlantı limiti aşımı, PHP'nin isteği tamamlayamamasına ve 503'e yol açabilir.
Adım adım çözüm
wp-config.php, .htaccess ya da sunucu yapılandırma dosyalarını değiştirmeden önce tam yedek alın; yanlış bir satır siteyi tamamen erişilemez hale getirebilir.
- 1
Sayfayı birkaç dakika sonra tekrar deneyin
503 çoğunlukla geçicidir. Tarayıcıyı tazeleyin (Ctrl+F5) ve 2-3 dakika bekleyip tekrar açın. Hata sürekli tekrarlıyorsa aşağıdaki adımlara geçin.
- 2
Sunucu kaynak kullanımını kontrol edin
Hosting panelinizde ya da sunucu izleme aracında CPU, RAM ve PHP işçi sayısı kullanımına bakın. Kaynaklar doluysa hata buradan kaynaklanıyordur. [panel adı ve menü yolu barındırma sağlayıcınıza göre değişir]
- 3
Eklentileri WP-CLI ile tek tek devre dışı bırakın
Yönetim paneline giremiyorsanız sunucuya SSH ile bağlanıp WP-CLI kullanın. Önce yedek alın. Tüm eklentileri kapatıp site açılıyorsa, eklentileri birer birer etkinleştirerek sorunlu olanı bulun.
bashwp plugin deactivate --all wp plugin activate eklenti-adi - 4
PHP-FPM işçi sayısını artırın
Sunucuya SSH erişiminiz varsa PHP-FPM havuz dosyasını (genelde /etc/php/8.x/fpm/pool.d/www.conf) düzenleyin. Değiştirmeden önce dosyanın bir kopyasını alın. Değerleri sunucu RAM'ine göre ayarlayın; aşırı yüksek değer sunucuyu kilitleyebilir. [dosya yolu PHP sürümüne ve işletim sistemine göre değişir]
textpm = dynamic pm.max_children = 20 pm.start_servers = 5 pm.min_spare_servers = 5 pm.max_spare_servers = 10 - 5
Ters proxy zaman aşımı süresini uzatın
Nginx ters proxy olarak kullanılıyorsa ve arka uç PHP-FPM'den yanıt beklerken 503 alınıyorsa zaman aşımı süresini artırın. Değişiklikten sonra yapılandırmayı test edip servisi yeniden başlatın.
nginxlocation ~ \.php$ { fastcgi_read_timeout 300; proxy_read_timeout 300; } - 6
Apache için zaman aşımı ayarını kontrol edin
Sunucu Apache kullanıyorsa Timeout direktifini kontrol edin. Düzenlemeden önce httpd.conf dosyasının yedeğini alın.
apacheTimeout 300 - 7
Hata kaydını açıp kaynağı doğrulayın
wp-config.php dosyasında "That's all, stop editing!" satırının üzerine şu satırları ekleyin. Hata ekrana basılmaz, wp-content/debug.log dosyasına yazılır. Düzenlemeden önce dosyanın yedeğini alın.
phpdefine( 'WP_DEBUG', true ); define( 'WP_DEBUG_LOG', true ); define( 'WP_DEBUG_DISPLAY', false ); - 8
Sunucu hata loglarını inceleyin
PHP-FPM ya da web sunucusu hata loglarında "503" ya da "max_children reached" gibi satırlar ararsanız sorunun tam kaynağını görürsünüz. [log dosyası yolu sunucu yapılandırmasına göre değişir, örn. /var/log/php8.x-fpm.log]
bashtail -n 100 /var/log/php8.1-fpm.log
Hangi sürümlerde görülüyor?
| WordPress | PHP | Durum | Not |
|---|---|---|---|
| Wordpress 7.1 | 8.3 | Doğrulanmadı | Bu hata WordPress sürümünden bağımsız, sunucu kaynak ve yapılandırma kaynaklıdır; belirli bir sürüme özgü değildir. |
Çözüldüğünü nasıl anlarsınız?
- Site, farklı tarayıcı ve cihazlardan art arda birkaç kez açılıyor, 503 tekrarlamıyor.
- Yönetim paneline normal bağlantıyla giriş yapılabiliyor.
- Sunucu izleme panelinde CPU ve PHP işçi kullanımı normal aralıkta.
- debug.log ya da PHP-FPM log dosyasına yeni 503/max_children hatası düşmüyor.
- Yüksek trafik anında (varsa) sayfa yüklenme süresi kabul edilebilir seviyede kalıyor.
Ne zaman uzmana başvurmalı?
Hata aralıklı geliyor, hangi eklenti ya da sunucu ayarının tetikleyici olduğunu bulamıyorsanız ya da canlı bir sitede risk almak istemiyorsanız kendiniz denemeden önce durdurun. Hata Ayıklama ve Onarım hizmetimizde sunucu loglarını, PHP-FPM yapılandırmasını ve eklenti kaynak kullanımını birlikte inceleyip kalıcı çözümü uyguluyoruz.
İlgili sayfalar: Hata Ayıklama ve Onarım · Acil Müdahale · WordPress hata çözümleri · Ücretsiz hız testi
Bu hatayı ₺2.500'e 2 saatte çözelim.
Sabit fiyat, kopya sitede çalışma, yazılı çözüm notu. Aynı hata 7 gün içinde tekrar ederse ücretsiz.
Sık sorulanlar
503 hatası nasıl düzeltilir?
Önce sayfayı birkaç dakika sonra tekrar deneyin. Tekrarlıyorsa eklentileri tek tek devre dışı bırakın, sunucu kaynak kullanımını kontrol edin ve PHP-FPM işçi sayısı ile ters proxy zaman aşımı ayarlarını gözden geçirin.
503 hangi hata?
503, sunucunun o anda isteği karşılayamadığını bildiren bir HTTP durum koduyla ilgilidir. Sayfanın veya kodun bozuk olduğu anlamına gelmez; genelde geçici bir kapasite veya yapılandırma sorunudur.
HTTP code 503 nedir?
HTTP durum kodları, sunucunun isteğinize verdiği yanıtın türünü gösterir. 503 kodu "Service Unavailable" anlamına gelir; sunucu geçici olarak hizmet veremiyor demektir, genelde kısa süre sonra düzelir.
Server temporarily unavailable ne demek?
Bu ifade, 503 hatasının başka bir görünümüdür. Sunucunun şu an isteği işleyecek kapasitesi olmadığını, bir süre sonra tekrar denenmesi gerektiğini belirtir.
503 hatası veri kaybına yol açar mı?
Hayır, 503 tek başına veritabanındaki içerikleri veya ürünleri silmez. Ancak sorunu giderirken sunucu dosyalarında değişiklik yapacaksanız önce yedek almanız gerekir.