15%

Tüm Hosting Hizmetlerinde %15 indirim

Becerilerini test et ve herhangi bir hosting planında İndirim kazan

Kodu kullanın:

Skills
Başlayın
28.10.2024

Hata 504 Gateway Timeout: Nedir ve Nasıl Düzeltilir

Bir 504 Gateway Timeout hatası, bir sunucunun istek işleme sırasında başka bir sunucudan zamanında yanıt alamaması durumunda oluşan bir HTTP durum kodudur. Pratik açıdan bakıldığında, upstream sunucunun yanıt vermesinin çok uzun sürdüğü ve bunun sonucunda ağ geçidi veya proxy’nin vazgeçerek son kullanıcıya bir hata döndürdüğü anlamına gelir.

Bu kapsamlı kılavuz, 504 Gateway Timeout hatasının tam olarak ne olduğunu, neye neden olduğunu ve — en önemlisi — ister sıradan bir ziyaretçi ister bir siteyi çevrimiçi tutmaktan sorumlu bir sunucu yöneticisi olun, nasıl düzeltileceğini açıklamaktadır.

504 Gateway Timeout Hatası Nedir?

Bir sunucu ağ geçidi veya ters proxy olarak hareket ettiğinde — istekleri bir upstream sunucuya ilettiğinde — belirli bir zaman dilimi içinde yanıt bekler. Eğer upstream sunucu zamanında yanıt vermezse, ağ geçidi istemciye 504 durum kodu döndürür.

Bu durum, 502 Bad Gateway‘den (geçersiz bir yanıt olduğunu gösterir) veya 503 Service Unavailable‘dan (sunucunun geçici olarak çevrimdışı olduğunu bildirir) farklıdır. 504, özellikle ağ geçidinin geçerli bir yanıt beklerken *zaman aşımına uğradığı* anlamına gelir.

Hata Mesajının Yaygın Varyasyonları

Kullanılan sunucu yazılımına, tarayıcıya veya CDN’e bağlı olarak bu hata şu şekillerde görüntülenebilir:

  • 504 Gateway Timeout
  • HTTP Error 504
  • Gateway Timeout Error
  • Error 504: Gateway Timeout
  • 504 Gateway Time-out *(Nginx’te yaygın)*
  • A 504 error occurred *(Cloudflare ortamlarında yaygın)*

İfade ne olursa olsun, tüm bunlar aynı temel soruna işaret eder: sunucular arası iletişimde zaman aşımı.

504 Gateway Timeout Hatasının Yaygın Nedenleri

504 hatası neredeyse her zaman bir sunucu tarafı sorunudur; yani kullanıcının tarayıcısında veya cihazında değil, altyapıda kaynaklanır. Doğru düzeltmeyi uygulamak için temel nedeni anlamak şarttır.

1. Sunucu Aşırı Yüklenmesi

Bir sunucu, ani bir trafik artışı veya aşırı sayıda eş zamanlı istek nedeniyle bunaldığında, yapılandırılmış zaman aşımı penceresi içinde işlem yapıp yanıt veremeyebilir. Bu durum, yüksek trafikli web sitelerinde 504 hatalarının en sık görülen nedenlerinden biridir.

Dikkat edilmesi gereken belirtiler: Yüksek CPU kullanımı, bellek tükenmesi, sunucu günlüklerinde uzun istek kuyrukları.

2. Sunucular Arası Ağ Bağlantısı Sorunları

Sorun her iki sunucuyla ayrı ayrı değil, aralarındaki ağ yoluyla ilgili olabilir. Ağ geçidi ile upstream sunucu arasındaki paket kaybı, yönlendirme hataları veya gecikme artışları zaman aşımını tetikleyebilir.

Dikkat edilmesi gereken belirtiler: Aralıklı hatalar, belirli coğrafi bölgeler veya veri merkezleriyle ilişkili hatalar.

3. DNS Çözümleme Sorunları

DNS kayıtları yanlış yapılandırılmışsa, güncelliğini yitirmişse veya bir sunucu geçişinin ardından tam olarak yayılmamışsa, ağ geçidi upstream sunucunun adresini çözümleyemeyebilir — bu da bağlantı kurulmadan önce zaman aşımına yol açar.

Dikkat edilmesi gereken belirtiler: Alan adı transferi veya sunucu geçişinin hemen ardından ortaya çıkan 504 hataları.

4. Yanlış Yapılandırılmış veya Aşırı Kısıtlayıcı Güvenlik Duvarları

Çok agresif güvenlik duvarları, sunucular arasındaki paketleri sessizce düşürerek upstream sunucunun yanıtının ağ geçidine ulaşmasını engelleyebilir. Bu durum, güvenlik duvarı kurallarının yeni sunucular arası iletişim yollarını hesaba katacak şekilde güncellenmediği sertleştirilmiş sunucu ortamlarında yaygın bir sorundur.

Dikkat edilmesi gereken belirtiler: Yalnızca belirli istek türlerini veya IP aralıklarını etkileyen 504 hataları.

5. Proxy Sunucu veya CDN Yanlış Yapılandırması

Web siteniz trafiği Cloudflare, Sucuri veya Fastly gibi bir proxy sunucu veya İçerik Dağıtım Ağı (CDN) üzerinden yönlendiriyorsa, bu katmandaki herhangi bir yanlış yapılandırma veya gecikme, istek kaynak sunucunuza ulaşmadan önce 504 hatasına neden olabilir.

Dikkat edilmesi gereken belirtiler: CDN atlandığında kaybolan 504 hataları.

6. Yavaş veya Yanıt Vermeyen Upstream Uygulamalar

Sunucunuz yanıt vermesi çok uzun süren bir harici API, veritabanı veya mikro hizmete bağımlıysa, ağ geçidi sonucu beklerken zaman aşımına uğrar. Bu durum, üçüncü taraf entegrasyonlara dayanan modern web mimarilerinde giderek daha yaygın hale gelmektedir.

Dikkat edilmesi gereken belirtiler: Harici veri kaynaklarına dayanan belirli sayfalar veya özelliklerle ilişkili 504 hataları.

7. Çok Kısa Ayarlanmış Zaman Aşımı Değerleri

Bazen upstream süreç doğru çalışıyor olabilir ancak sunucunun yapılandırılmış zaman aşımının izin verdiğinden daha uzun sürebilir. proxy_read_timeout veya benzeri yönergeler çok ihtiyatlı biçimde ayarlanmışsa, meşru istekler erken kesilecektir.

504 Gateway Timeout Hatası Nasıl Düzeltilir?

Uygun düzeltme, hatayla karşılaşan bir ziyaretçi mi yoksa etkilenen altyapıdan sorumlu bir sunucu yöneticisi mi olduğunuza bağlıdır.

Ziyaretçiler İçin: Hızlı Sorun Giderme Adımları

504 hatasıyla karşılaşan sıradan bir kullanıcıysanız, sorun neredeyse kesinlikle sunucu tarafındadır — ancak deneyebileceğiniz birkaç şey vardır:

#### 1. Sayfayı Yenileyin

F5 tuşuna basın veya tarayıcının yenile düğmesine tıklayın. Sunucu anlık olarak aşırı yüklendiyse, yük azaldıktan sonra basit bir yenileme işe yarayabilir.

#### 2. Zorla Yenileme

Tarayıcı önbelleğini atlamak ve sunucuya yeni bir istek göndermek için zorla yenileme yapın (Windows/Linux’ta Ctrl+Shift+R, macOS’ta Cmd+Shift+R).

#### 3. Tarayıcı Önbelleğini ve Çerezleri Temizleyin

Eski önbelleğe alınmış veriler zaman zaman sunucu iletişimini engelleyebilir. Ayarlar → Gizlilik ve Güvenlik bölümünden tarayıcınızın önbelleğini ve çerezlerini temizleyin, ardından tekrar deneyin.

#### 4. İnternet Bağlantınızı Kontrol Edin

Kendi bağlantınızın kararlı olduğunu doğrulayın. Kararsız bir bağlantı, zaman zaman sunucuyla düzgün iletişimi engelleyerek mevcut bir zaman aşımı sorununu daha da kötüleştirebilir.

#### 5. Farklı Bir Ağ veya Cihaz Deneyin

Mobil veriye veya farklı bir Wi-Fi ağına geçin. Hata kaybolursa, sorun sunucunun kendisinden değil, İSS’inizden veya yerel ağ yapılandırmanızdan kaynaklanıyor olabilir.

#### 6. Bekleyin ve Tekrar Deneyin

504 hataları çoğunlukla geçicidir. Sunucu geçici bir yük altındaysa, 5-10 dakika bekleyip tekrar denemek genellikle en etkili çözüm yoludur.

Sunucu Yöneticileri İçin: Ayrıntılı Düzeltmeler

504 hatası yaşayan sunucuyu veya web sitesini yönetiyorsanız, daha sistematik bir yaklaşım gerekmektedir.

#### 1. Sunucu Kaynak Kullanımını Kontrol Edin

Sunucunuzun mevcut kaynak tüketimini inceleyerek başlayın. Yüksek CPU, bellek tükenmesi veya dolu disk, sunucunun istekleri zamanında işlemesini engelleyebilir.

# Check CPU and memory usage
top
htop

# Check disk usage
df -h

# Review recent system logs
tail -f /var/log/syslog
journalctl -xe

Çözüm: Sunucunuz sürekli olarak yoğun yük altındaysa, daha güçlü bir plana yükseltmeyi düşünün. AlexHost’un VPS Hosting hizmeti, trafiğiniz büyüdükçe ayarlanabilen ölçeklenebilir kaynaklar sunarken, Dedicated Servers yüksek talep ortamları için maksimum performans sağlar.

#### 2. Web Sunucusunu ve Uygulama Hizmetlerini Yeniden Başlatın

Web sunucusu sürecinizin kontrollü bir şekilde yeniden başlatılması, takılı kalan işçileri temizleyebilir, belleği boşaltabilir ve geçici sorunları çözebilir.

# Restart Nginx
sudo systemctl restart nginx

# Restart Apache
sudo systemctl restart apache2

# Restart PHP-FPM (if applicable)
sudo systemctl restart php8.1-fpm

Önemli: Yeniden başlatmanın sorunu çözüp çözmediğini doğrulamak için her zaman öncesinde ve sonrasında günlükleri kontrol edin.

#### 3. Sunucu Zaman Aşımı Sınırlarını Artırın

Meşru istekler varsayılan zaman aşımının izin verdiğinden daha uzun sürdüğü için kesiliyorsa, sunucu yapılandırmanızdaki ilgili zaman aşımı yönergelerini artırın.

Nginx için (/etc/nginx/nginx.conf veya sitenizin sunucu bloğu):

proxy_connect_timeout   300;
proxy_send_timeout      300;
proxy_read_timeout      300;
send_timeout            300;

Apache için (/etc/apache2/apache2.conf veya .htaccess):

Timeout 300
ProxyTimeout 300

PHP-FPM için (/etc/php/8.1/fpm/pool.d/www.conf):

request_terminate_timeout = 300

Değişiklik yaptıktan sonra her zaman hizmeti yeniden yükleyin veya yeniden başlatın:

sudo nginx -t && sudo systemctl reload nginx
# or
sudo apachectl configtest && sudo systemctl reload apache2

#### 4. DNS Sorunlarını Araştırın ve Çözün

504 hatası bir sunucu geçişinin, alan adı transferinin veya DNS kaydı değişikliğinin ardından ortaya çıktıysa, DNS yayılımı tamamlanmamış olabilir ya da kayıtlar yanlış sunucuya işaret ediyor olabilir.

Tanılama adımları:

# Check current DNS resolution
dig yourdomain.com
nslookup yourdomain.com

# Check from a specific DNS server
dig @8.8.8.8 yourdomain.com

Küresel yayılım durumunu doğrulamak için DNS Checker gibi çevrimiçi bir araç kullanın.

Çözüm: A kayıtlarınızın ve CNAME kayıtlarınızın doğru IP adresine işaret ettiğinden emin olun. Yakın zamanda bir alan adı kaydettirdiyseniz veya transfer ettiyseniz, tam yayılım için 48 saate kadar bekleyin. AlexHost’un Alan Adı Kaydı hizmeti, kayıtlarınızı doğru ve güncel tutmanıza yardımcı olacak DNS yönetim araçları içermektedir.

#### 5. Güvenlik Duvarı Kurallarını ve Güvenlik Ayarlarını Gözden Geçirin

Sunucular arası iletişimi engelleyen bir güvenlik duvarı, 504 hatalarının yaygın ancak çoğunlukla gözden kaçan bir nedenidir. Düşürülen veya reddedilen bağlantılar için güvenlik duvarı günlüklerinizi kontrol edin.

# Check UFW logs (Ubuntu/Debian)
sudo ufw status verbose
sudo tail -f /var/log/ufw.log

# Check iptables rules
sudo iptables -L -n -v

# Check firewalld (CentOS/RHEL)
sudo firewall-cmd --list-all

Çözüm: Ağ geçidiniz ile upstream sunucularınız arasındaki trafiği engelliyor olabilecek kuralları belirleyin ve gerekli iletişime izin verecek şekilde güncelleyin. Portları gereksiz yere açmamaya dikkat edin — en az ayrıcalık ilkesini uygulayın.

#### 6. Proxy ve CDN Yapılandırmasını Hata Ayıklayın

Siteniz bir ters proxy (Node.js veya Python uygulaması için proxy olarak çalışan Nginx gibi) veya CDN kullanıyorsa, proxy yapılandırmasının doğru olduğunu ve kaynak sunucuya erişilebildiğini doğrulayın.

Nginx ters proxy için upstream bloğunu doğrulayın:

upstream backend {
    server 127.0.0.1:3000;
    keepalive 32;
}

server {
    location / {
        proxy_pass http://backend;
        proxy_http_version 1.1;
        proxy_set_header Connection "";
        proxy_read_timeout 300;
    }
}

CDN ile ilgili 504 hataları için:

  • Sorunun CDN’den mi yoksa kaynak sunucudan mı kaynaklandığını belirlemek için siteye doğrudan IP adresi üzerinden erişerek geçici olarak CDN’yi atlayın.
  • CDN’nin kaynak zaman aşımı ayarlarını gözden geçirin — birçok CDN’nin sunucunuzun ayarlarıyla uyumlu olması gereken kendi yapılandırılabilir zaman aşımı değerleri vardır.
  • Devam eden herhangi bir olay için CDN’nin durum sayfasını kontrol edin.

#### 7. Yavaş Veritabanı Sorgularını ve Uygulama Kodunu Optimize Edin

504 hatası yavaş bir upstream uygulamadan kaynaklanıyorsa — örneğin çok uzun süren bir veritabanı sorgusu — düzeltme, sunucu yapılandırması yerine uygulama düzeyinde optimizasyon gerektirir.

Araştırma adımları:

  • MySQL/MariaDB’de yavaş sorgu günlüğünü etkinleştirin:
SET GLOBAL slow_query_log = 'ON';
SET GLOBAL long_query_time = 2;
  • New Relic, Datadog veya Netdata gibi açık kaynaklı alternatifler gibi uygulama performans izleme (APM) araçlarını inceleyin.
  • Sık sorgulanan sütunlara veritabanı indeksleri ekleyin.
  • Pahalı veritabanı çağrılarının sayısını azaltmak için önbellekleme (Redis, Memcached) uygulayın.

#### 8. Sunucu Sağlığını Proaktif Olarak İzleyin

Reaktif sorun giderme, proaktif izlemeden daha az etkilidir. CPU, bellek, disk G/Ç ve yanıt süresi eşikleri için uyarılar ayarlayın; böylece sorunları ziyaretçileriniz için 504 hatalarına dönüşmeden önce tespit edip giderebilirsiniz.

Mevcut hosting ortamınız bu optimizasyonları uygulamak için gerekli kaynaklardan veya esneklikten yoksunsa, bir yükseltme düşünmenin zamanı gelmiş olabilir. AlexHost’un cPanel’li VPS planları, sanal özel sunucunun ham performansıyla birlikte sezgisel bir yönetim arayüzü sunar — derin komut satırı uzmanlığı gerektirmeden sunucunuzu izlemenizi ve yönetmenizi kolaylaştırır.

504 ile Diğer Yaygın Ağ Geçidi Hataları Arasındaki Fark

504’ün ilgili HTTP hatalarından nasıl farklılaştığını anlamak, sorunları daha doğru teşhis etmenize yardımcı olur:

Hata KoduAdAnlam
502Bad GatewayUpstream sunucu geçersiz bir yanıt döndürdü
503Service UnavailableSunucu geçici olarak istekleri işleyemiyor
504Gateway TimeoutAğ geçidi upstream sunucuyu beklerken zaman aşımına uğradı
408Request Timeoutİstemci tam bir istek göndermek için çok uzun süre bekledi
524A Timeout OccurredCloudflare’e özgü; kaynak sunucu zaman aşımına uğradı

504 Hatalarını Önleme: En İyi Uygulamalar

504 hatalarının oluşmasını bekleyip tepki vermek yerine, olasılıklarını en aza indirmek için şu en iyi uygulamaları hayata geçirin:

  • Sunucu kaynaklarınızı doğru boyutlandırın — hosting planınızın, zirve yükler dahil beklenen trafiğinizi kaldırabildiğinden emin olun.
  • Yük dengeleyici kullanın — tek bir sunucunun darboğaz haline gelmesini önlemek için trafiği birden fazla sunucuya dağıtın.
  • Önbelleklemeyi agresif biçimde uygulayın — kaynak sunucunuza ulaşan istek sayısını azaltmak için tam sayfa önbellekleme, nesne önbellekleme ve CDN kenar önbellekleme kullanın.
  • Gerçekçi zaman aşımı değerleri belirleyin — zaman aşımlarını keyfi varsayılanlar yerine uygulamanızın gerçekte gerektirdiği işlem süresini yansıtacak şekilde yapılandırın.
  • DNS sağlığını izleyin — DNS kayıtlarınızın doğru olduğunu ve TTL değerlerinin uygun olduğunu düzenli olarak doğrulayın.
  • Yazılımı güncel tutun — güncel olmayan web sunucusu yazılımı, PHP sürümleri veya CMS eklentileri, zaman aşımlarına katkıda bulunan performans darboğazlarına yol açabilir.
  • Sunucunuzu doğru şekilde güvenli hale getirin — iyi yapılandırılmış bir SSL sertifikası yalnızca kullanıcılarınızı korumakla kalmaz, aynı zamanda sunucular arası şifreli bağlantıların beklenmedik el sıkışma gecikmelerine yol açmamasını da sağlar. AlexHost’un SSL Sertifikaları kolayca dağıtılabilir ve güvenli, verimli sunucu iletişiminin sürdürülmesine yardımcı olur.

Sonuç

Bir 504 Gateway Timeout hatası, bir ağ geçidi veya proxy’nin upstream sunucudan zamanında yanıt alamaması durumunda oluşan sunucu tarafı bir sorundur. Ziyaretçiler için sinir bozucu olabilse de, doğru yaklaşımla neredeyse her zaman teşhis edilebilir ve düzeltilebilir.

Ziyaretçiler için en iyi anlık adımlar sayfayı yenilemek, önbelleği temizlemek ve tekrar denemeden önce birkaç dakika beklemektir.

Sunucu yöneticileri için düzeltme, sistematik bir araştırma gerektirir: sunucu kaynak kullanımını kontrol edin, zaman aşımı yapılandırmalarını gözden geçirin, güvenlik duvarı kurallarını denetleyin, DNS kayıtlarını doğrulayın ve yavaş uygulama kodunu veya veritabanı sorgularını optimize edin.

Sağlam altyapıya sahip güvenilir bir hosting sağlayıcısı seçmek, 504 hatalarının sıklığını azaltmanın tek en etkili yoludur. İster ölçeklenebilir VPS Hosting, yüksek performanslı Dedicated Servers veya giriş seviyesi Paylaşımlı Web Hosting ihtiyacınız olsun, AlexHost web sitenizi günün her saati hızlı, kararlı ve erişilebilir tutmak için gerekli altyapıyı, desteği ve araçları sağlar.

15%

Tüm Hosting Hizmetlerinde %15 indirim

Becerilerini test et ve herhangi bir hosting planında İndirim kazan

Kodu kullanın:

Skills
Başlayın