WordPress 504 Ağ Geçidi Zaman Aşımı Hatası Nasıl Onarılır?

Bugün, WordPress 504 Ağ Geçidi Zaman Aşımı Hatasına bir göz atacağız ve WordPress sitenizde iyi mi düzeltileceğine dair birtakım tavsiyeler vereceğiz.

Web sitenizin içerisinde ne olduğu yerine hata mesajı içeren boş bir ekrandan daha can sıkıcı bir şey yoktur. Çoğu blog ve online mağaza için bu tür yanlışlar gelir yitirilmesine yol açabilir. Ziyaretçiler deposu hemen fena bir deneyimle terk ederler ve alışveriş yapamazlar. Öyleyse dalış yapalım –

Neler Okuyacaksınız? →

504 Ağ Geçidi Zaman Aşımı Hatası nedir?

5 ile başlayan HTTP vaziyet kodları server tarafı hatalarıdır. Birden oldukça server arasındaki irtibat yanlışı sebebiyle arzu gerçekleştirilemediğinde görüntülenirler.

504 Ağ geçidi vakit aşımı yanlışı (504 Gateway Timeout) bir HTTP vaziyet kodudur. Bir sunucu, ağ geçidi ya da proxy olarak vazife yapan öbür bir sunucudan zamanında cevap almadığında görüntülenir. Basitçe söylemek gerekirse, bu, sunucunuzun isteğinizi muayyen bir müddet içerisinde işleyemediği anlamına gelir.

Çeşitli internet tarayıcıları, işletim sistemleri ve server türleri olduğundan, hata 504 bir oldukça şekilde görüntülenir. Hepsi genelde aynı anlama gelir. En tanınmış sürümlerden kimilerini listeledik:

  • 504 Ağ geçidi vakit aşımına uğradı
  • 504 Ağ geçidi vakit aşımı NGINX
  • NGINX 504 ağ geçidi vakit aşımı
  • Ağ Geçidi Zaman Aşımı hatası
  • 504 Hatası
  • HTTP 504 hatası
  • 504 Ağ Geçidi Zaman Aşımı Hatası
  • HTTP 504
  • 504 hataları
  • Ağ geçidi vakit aşımı (504)
  • 504 Ağ Geçidi vakit aşımı – Sunucu zamanında cevap vermedi
504 Ağ Geçidi Zaman Aşımı Hatası ya da 504 Gateway Timeout

504 Ağ Geçidi Zaman Aşımı Hatasının Nedenleri

504 Gateway Timeout ya da 504 Ağ Geçidi Zaman Aşımı hatasının kendisine bakmadan önce, niçin oluştuğunu idrak etmek önemlidir.

Tarayıcınızı başlattığınızda ve bir URL’ye gittiğinizde, arzu barındırıldığı servera geri gönderilir. Web sunucusu daha sonra talebi işler ve istenen kaynakları bir HTTP üst bilgisiyle beraber gönderir. Bu başlık, her şeyin yolunda olup olmadığını ya da bir hatanın oluşup oluşmadığını denetlemek için kullanabileceğiniz bir oldukça HTTP vaziyet kodundan birini içerir. Tüm vaziyet kodları fena değildir. Örneğin, vaziyet kodu 200 her şeyin yolunda gittiğini gösterir.

500-s’deki her vaziyet kodu, değişik anlamları olan bir hata kodudur (500, 501, 502, 503, 504 vb.). İsteğin kabul edildiğini, fakat sunucunun talebi gerçekleştiremediğini belirtirler.

Bu bağlamda, 504 hatası, ağ geçidi olarak çalışan sunucunun artık bir server cevabını beklemek için kafi zamana haiz olmadığı anlamına gelir. İki sunucunun talebi işlemesi mevzubahis olduğunda ve ikinci sunucudan cevap süresi dolduğunda kod döndürülür.

Sunucu vakit aşımlarına ek olarak, 504 hatasına niçin olan öbür unsurlar da vardır:

  • Yavaş sunucu. WordPress internet sitenizi barındırdığınız sunucunun oldukça yavaş cevap vermesi ve bu nedenden dolayı ağ geçidi hataları oluşturması mümkündür.
  • PHP çalışanı yetersiz. PHP çalışanları WordPress sitenizde kod çalıştırmak için kullanılır. Zorlu internet siteleri bütün PHP çalışanlarını meşgul edebilir. Bu durumda, kuyruğu oluştururlar. Kuyruk ve biriktirme sıralaması doluysa, eski istekler yoksayılır. Hosting şirketinizden PHP çalışanlarının sayısını artırmasını isteyebilirsiniz. Bir site için ek PHP çalışanları, birden oldukça isteğin aynı anda çalışmasına izin verir.
  • Güvenlik duvarı sorunları. Sunucunuzdaki emniyet duvarı yanlış yapılandırma ya da bağlantıyı engel olan kurallar sebebiyle yanlışlar içerebilir.
  • Ağ bağlantısı. Proxy sunucusu ile internet sunucusu arasındaki ağ bağlantısında bir problem varsa, bu gecikmelere niçin olabilir. Ayrıca kullanıldığında yük dengeleyici ile alakalı ağ problemleri da olabilir.

504 Ağ Geçidi Zaman Aşımı Hatası Nasıl Düzeltilir?

504 Ağ Geçidi vakit aşımı yanlışı gördüğünüzde, ne yapmanız gerektiği mevzusu ile alakalı kafanız karışabilir mi? Her vakit aşağıdaki işlemleri deneyebilirsiniz –

  • Sayfayı tekrardan yüklemeyi deneyin
  • Farklı bir tarayıcı deneyin
  • Farklı cihazlarda denetim edin
  • Proxy’yi dönem dışı bırak
  • DNS kayıtlarınızı denetim edin
  • CDN’yi geçici olarak dönem dışı bırakın
  • Barındırma sağlayıcınızla alakalı problemleri denetim edin
  • Siteyi spam, botlardan paklayın ve DDoS saldırılarına karşı koruyun
  • Eklentilerinizi ve temalarınızı denetim edin
  • Kayıtları denetim edin
  • Nginx seçeneklerini değiştirin

Sayfayı tekrardan yüklemeyi deneyin:

504 Ağ Geçidi Zaman Aşımı Hatası ile karşılaştığınızda yapmanız ihtiyaç duyulan ilk şeylerden biri, bir dakika bekleyip sayfayı tekrardan yüklemektir. Belki de barındırma ya da server aşırı yüklenmiştir ve site hızla işe geri dönecektir.

Yapabileceğiniz öbür bir şey, downforeveryoneorjustme.com adresindeki internet sitenizin durumunu denetim etmektir. Bu site, sitenin sadece sizin ya da bütün ziyaretçiler için hizmet dışı olup olmadığını bildirir. Araç, server tarafınca döndürülen HTTP vaziyet kodunu denetler. Kod 200’den farklıysa, bu durumda, Aşağı işaretçisini göreceksiniz. Bu, sitenin hepimiz için çalışmadığı anlamına gelecektir.

Farklı bir tarayıcı deneyin:

Sitenin online olması, fakat gene de 504 ağ geçidi vakit aşımı hatasını görüyorsanız, tarayıcınızı öbür bir tanesiyle değiştirmeyi deneyin. Tarayıcı önbelleğini paklayın ya da gizli saklı modu kullanın, bu da hatanın tarayıcıdan kaynaklanıp kaynaklanmadığını belirlemeye yardımcı olabilir.

Farklı cihazlarda denetim edin:

Siteyi değişik bilgisayarlarda, değişik ağlarda ya da mobil cihazlarda açmayı deneyin. Hiçbir şey 504 ağ geçidi vakit aşımı hatasını düzeltmeye yardımcı olamazsa, bu adım problemin server tarafında mı yoksa mahalli mi bulunduğunu belirlemenize yardımcı olacaktır.

Proxy’yi dönem dışı bırak:

Proxy server kullanıyorsanız birtakım durumlarda 504 yanlışı alabilirsiniz. Bu vakalar, bilhassa client tarafında oldukça nadirdir. Windows ve Mac’te proxy’yi iyi mi dönem dışı bırakacağınıza dair kılavuzları okuyun.

DNS kayıtlarınızı denetim edin:

504 Ağ geçidi vakit aşımı hatalarına (504 Gateway Timeout error) genelde DNS sunucusunda ki problemler niçin olur. Bunun iki sebebi var. Etki alanı ismi doğru IP adresine değiştirilmezse, bu server tarafında olur.

WordPress internet sitesini yeni barındırma hizmetine yeni taşıdıysanız, adresin DNS tabanına eklenmesini beklemeniz gerekir. Çoğu durumda, 24 saate kadar sürer. Her şey DNS kayıtlarınızın TTL değerine bağlıdır. DNS’inizin bütün dünyaya yayılıp yayılmadığını denetlemek için DNSMap gibi bedava bir vasıta kullanabilirsiniz.

İkinci DNS problemi client tarafını etkiler. Bu durumda, mahalli DNS önbelleğinizi temizleyebilirsiniz. Bu, tarayıcı önbelleğini temizlemeye benzer.

Windows’ta bir komut satırı açın ve şunu yazın:

ipconfig / flushdns

“DNS Çözümleyici Önbelleği Başarıyla Temizlendi” iletisini görmelisiniz.

MacOS’ta, terminale aşağıdakileri yazın:

dscacheutil -flushcache

Not: Mac’te etkin işlemlerin mesajı yoktur.

Son olarak, client DNS sunucularınızı geçici olarak değiştirebilirsiniz. Varsayılan olarak, DNS sunucuları ISS’niz tarafınca sağlanır. Bunları geçici olarak misal olarak Google tarafınca sağlanan genel bir DNS serverına değiştirebilirsiniz. Bazı insanoğlu Google’ın genel DNS’sini devamlı kullanmayı tercih eder, zira birtakım durumlarda daha güvenilirdir.

CDN’yi geçici olarak dönem dışı bırakın:

Ayrıca, problem içerik dağıtım ağıyla (CDN) alakalı olabilir. Üçüncü taraf bir CDN sağlayıcısı kullanıyorsanız, geçici olarak dönem dışı bırakmayı deneyebilirsiniz. Bunun için WordPress eklentilerini kullanabilirsiniz. Onlarla CDN güvenliğini dönem dışı bırakabilirsiniz.

Cloudflare ya da Sucuri gibi arka proxy hizmetlerini kullanırsanız, ek emniyet duvarını kullandıkları için 504 hatasına niçin olabilirler. Çoğu, kaynak sunucunuz tarafınca döndürüldüğünde 500 vaziyet kodunu önbelleğe alır. Birçok kullanıcı Cloudflare bedava planında bu problemi ayrım etti.

Ne yazık ki, Cloudflare tam bir proxy hizmeti olduğundan, bağlantıyı kesmenin süratli bir yolu yoktur.

Ancak, Cloudflare’ı suçlamadan önce, iki tür 504 yanlışı bulunduğunu bilmek önemlidir:

504 Cloudflare’de Ağ Geçidi Zaman Aşımı (sürüm 1)

Karşılaştığınız sayfanın “504 Gateway timeout Cloudflare-nginx” olarak göründüğünü görürseniz, bu durumda problem Cloudflare tarafındadır. Kullanıcı desteklerine başvurun. Veya vaziyet sayfalarını denetim edin. Büyük olasılıkla, bu problem ile alakalı esasen bilgilendirilmişler ve üstünde çalışıyorlar.

Cloudflare’da 504 Ağ Geçidi Zaman Aşımı (sürüm 2)

Sayfayı birazcık renkli görüyorsanız burada ne demek istediğimi anlayacaksınız Error 504 yazar ki, bu WordPress barındırma ile alakalı bir sorundur. Lütfen sonraki bölümdeki önerileri takip edin.

Barındırma sağlayıcınızla alakalı problemleri denetim edin:

Sunucu sorunları, kullananların WordPress internet sitelerinde 504 hataları yaşamasının yaygın sebeplerinden biridir. Basit bir ifadeyle, Nginx ya da Apache bekleme süresi sona erene kadar bir cevap bekler.

504 hataları, birden fazla ziyaretçinin bulunmuş olduğu sitelerde, e-ticaret sitelerinde ve online mağazalarda harbiden oldukça popüler. İkincisi Woocommerce gibi e-ticaret eklentileri yüklemiş olabilir. Genellikle önbelleğe alınmamış bir oldukça arzuları vardır. Bu, sunucunun aşırı yüklenmesine niçin olabilir. Ancak, bu tür hatalar, bloglar da dahil olmak suretiyle muhtelif internet sitesi türlerinde meydana gelebilir. Birçok ev sahibi genelde bu problemi çözüme ulaştırmak için daha pahalı bir tarife planına geçmeyi önerir. Ve bu genelde bu problemi çözmeye yardımcı olsa bile, genelde lüzumlu değildir.

Bazı barındırma her server için hususi kaynaklar sağlar. Bu, her sitenin kendi yalıtılmış kabında barındırıldığı anlamına gelir. Çalıştırmak için lüzumlu bütün program kaynaklarına haizdir (Linux, Nginx, PHP, MySQL). Kaynaklar% 100 gizlidir ve kimselerle paylaşmaz. Ancak birtakım paylaşılan WordPress barındırma planlarında bu hususiyet yoktur. Dolayısıyla, trafiği yüksek olan bütün komşu siteler sitenizde 504 ağ geçidi vakit aşımı hatasına niçin olur.

504 hatalarının 503 hatalarına (hizmet kullanılamıyor) hatta 502 hatalarına (kötü ağ geçidi) oldukça benzeyebileceğini de unutmamak gerekir. Ama aslında farklılar.

Gelecekte bu tür hataları önlemek istiyorsanız, server durumunu seyretmek ve problemleri hemen bildirmek için URL leri denetim eden bir vasıta kullanabilirsiniz. Bu araçlar, belirtilen URL’ye derli toplu olarak bir HTTP HEAD talebi gönderir. Ana sayfanızı basitçe ayarlayabilirsiniz. Ayrıca, denetim sıklığını 15 saniye ila 10 dakika arasında seçebilirsiniz.

Hizmet, sitenizin hizmet dışı olması halinde size bir e-posta göndererek sitenin ne vakit gerçekleştiğini gösterir.

Bu, kaide olarak devamlı aşırı yüklenmiş bir sanal barındırma kullanıyorsanız bilhassa faydalı olabilir. Bu, sitenizin çalışmadığını kanıtlar (örneğin, gece). Bu nedenle, adanmış barındırma işlemine geçmenizi öneririz.

Siteyi spam, botlardan paklayın ve DDoS saldırılarına karşı koruyun:

Belki de internet siteniz botlar tarafınca spam olmuş ya da bir DDoS tecavüz hedefi haline gelmiştir. Bazen bu, önbelleğe alınmamış isteklere ve bunun kararında da sunucunun aşırı yüklenmesine yol açar. Tüm bunlar 504 ağ geçidi vakit aşımı hatasına niçin olur. İçinde rastgele bir kalıp olup olmadığını görmek için server analizini öğrenebilirsiniz. Bu malumat için barındırma sağlayıcınızdan talepte bulunabilirsiniz.

İncelemenizi öneri ettiğimiz ilk rapor, en üst seviye müşterilerin IP adresleridir. Genellikle, siteniz bir anda büyük trafik oluşturmaya başladıysa ya da botlar tarafınca saldırıya uğradıysa, bu oldukça yararlıdır.

İncelemeyi önerdiğimiz ikinci rapor, arzu ve botlardır. Web sitenizi ziyaret eden şahıs sayısını, bot sayısıyla çabucak karşılaştırabilirsiniz. Ancak, bütün botların fena olmadığını unutmayın. Google Bot harbiden iyi bir bot, içerisinde ne olduğu dizine almak ve arama motorunda tanıtmak için siteyi tarar.

Önerdiğimiz üçüncü rapor bir önbellek analizidir. Burada önbellekte hangi isteklerin noksan bulunduğunu ve sitenizin en iyi konumlarının neler bulunduğunu görebilirsiniz. En iyi performansı ve kararlılığı sağlamak için, olası olduğunca oldukça arzu önbelleğe almayı denemelisiniz. Bazı kaynaklar büyük oranda önbelleğe alınmamış istekler oluşturduğundan bu her vakit kullanılamaz. Buna en iyi misal Woocommerce’dir. Bu istekler, doğru çabalama ve eşzamanlılık (senkronizasyon) için gereklidir.

Sitenizde engellenmesi ihtiyaç duyulan trafik ya da IP adreslerini bulup belirlerseniz, WordPress emniyet eklentisini kullanabilirsiniz. Ancak, bütün barındırıcılar emniyet eklentilerini yüklemenize izin vermez. İlk olarak, bu tür eklentiler, bilhassa serverı tararken performansı etkileyebilir. İkinci olarak, barındırma sağlayıcısı Google Cloud Platform’dan yük dengeleyicileri kullanabildiğinden IP önleme özelliği bunlarda çalışmayabilir.

Doğal olarak, IP adresleri her vakit barındırma yardımcı servisi tarafınca engellenebilir. Ancak, bir saldırının ne kadar uzun ve büyük olduğuna bağlı olarak, bu katiyen bitemez. Bir alanda saldırılar ya da spam engellendiğinde, genelde öbür yerlere geçer, IP adreslerini değiştirir ya da öbür proxy’ler kullanırlar. Bu nedenle, bu durumda, Cloudflare ya da Sucuri gibi bir emniyet çözümü yüklemenizi öneririz.

Eklentilerinizi ve temalarınızı denetim edin:

Birçok kullanıcı, üçüncü taraf eklentilerinin ya da temalarının 504 ağ geçidi vakit aşımı hatalarına yol açmadığına inanır. Ve bir oldukça durumda bu doğrudur. Ancak, bir oldukça kullanıcının deneyimine göre, önbelleğe alınmayan yavaş bir eklenti talebi PHP çalışanlarınızdan daha fazlasını kullandığından gecikmelere niçin olabilir. Bunların sınırına ulaştığınızda, kuyruk eski isteklerinizi kaldırır ve bu da 504 hatalarına niçin olabilir. 60 saniyelik bir vakit aşımı kararı oluşan 502 hatasıyla karıştırılmamalıdır.

Sorunu çözmenin birkaç yolu vardır. Bunlardan biri, bütün eklentilerinizin dönem dışı bırakılmasıdır. Devre dışı bırakırsanız verilerinizi kaybetmeyeceğinizi unutmayın. Yönetici paneline erişiminiz varsa, Eklentiler kısmına gidin ve Devre Dışı Bırak hususi durumunu seçin. Bu, bütün eklentilerinizi dönem dışı bırakır.

Bu problemi çözerse, kaynağını bulmanız gerekir. Eklentileri bir bir etkinleştirin, her aktivasyondan sonra siteyi tekrardan başlatın. 504 hatasını gördüğünüzde, sorunlu eklentiyi tanımlayabileceksiniz. Daha sonra yardım için eklenti geliştiricisine müracaat edebilir ya da WordPress deposunda bir bilet oluşturabilirsiniz.

Yönetici paneline erişiminiz yoksa, sunucunuza bağlanmak için FTP istemcisini kullanabilirsiniz. Eklenti klasörünü plugins_old gibi bir adla tekrardan adlandırın. Ardından sitenizi tekrardan denetim edin. Bu işe yararsa, sebebi bulmak için her eklentiyi bir bir test etmeniz gerekir. Eklentilerin klasörünü tekrardan adlandırın. Ardından soruna niçin olan eklentiyi bulana kadar içerisindeki eklenti klasörlerini tekrardan adlandırın.

Tüm eklentilerinizin, temalarınızın ve WordPress çekirdeğinin son olarak sürüme güncellendiğinden emin olun. Ve desteklenen bir PHP versiyonu kullandığınızdan emin olun.

Eklenti fena kod içeriyorsa, büyük ihtimalle bu problemi çözüme ulaştırmak için WordPress geliştiricilerine başvurmanız gerekecektir.

Kayıtları denetim edin:

Hata günlüklerinizi de kullanabilirsiniz. Bunları barındırma panosunun hususi bir bölümünde görüntüleyebilirsiniz. Özellikle deposu internet sitesi eklentisi ise problemi çabucak düzeltebilirsiniz. Barındırma hizmetiniz günlük oluşturma araçları sunmuyorsa, günlüğe kaydetmeyi etkinleştirmek için wp-config.php dosyasına aşağıdaki kodu ekleyebilirsiniz:

define (‘WP_DEBUG’, true);
define (‘WP_DEBUG_LOG’, true);
define (‘WP_DEBUG_DISPLAY’, false);

Günlükler genelde /wp-content klasöründe bulunur. Bazen ayrı klasörlerde olabilirler. Ayrıca, /var/log/apache2/error.log (Apache) ya da /var/log/nginx/error.log (Nginx) adresinde bulunan Apache ve Nginx günlüklerini de denetim edebilirsiniz.

Nginx seçeneklerini değiştirin:

Nginx + FastCGI (php-fpm) üstünde kendi sunucunuzu ve WordPress internet sitenizi koruyorsanız. Ayrıca, Nginx’i Apache için proxy olarak kullanabilirsiniz. Bu durumda, 504 ağ geçidi vakit aşımı hatalarını önlemek için değiştirebileceğiniz ek ayarlar vardır.

Nginx’i FastCGI (php-fpm) ile kullanıyorsanız, ilkin PHP-FPM dosyasında değişim yapmanız gerekir. /Etc/php5/fpm/pool.d/www.conf adresine gidin (PHP sürümüne bağlı olarak değişebilir). Aşağıdaki yönergeyi belirleyin:

request_terminate_timeout = 300

Sonra genelde /etc/php.ini dizininde bulunan php.ini dosyasını değiştirmeniz gerekir. Max_execution_time yönergesini bulun. Değerini 300’e yükseltin ya da yoksa bir direktif oluşturun:

max_execution_time = 300

Son olarak, nginx.conf dosyasını değiştirmeniz gerekecektir. Nginx sanal ana bilgisayar yapılandırmanıza aşağıdakileri ekleyin:

location ~ .php $ {
  …
 fastcgi_read_timeout 300;
 …
 }

Sonra Nginx ve PHP-FPM’yi tekrardan başlatın.

service nginx reload
service php5-fpm reload

Nginx’i Apache için proxy olarak kullanıyorsanız, bu durumda nginx.conf dosyanıza aşağıdakileri ekleyin:

proxy_connect_timeout 600;
proxy_send_timeout 600;
proxy_read_timeout 600;
send_timeout 600;

Ardından, Nginx’i tekrardan başlatın.

service nginx reload

İletişim desteği

Sürekli olarak 504 ağ geçidi vakit aşımı hatasıyla karşılaşırsanız ve hiç bir şey düzeltmeye yardımcı olmazsa, barındırma yöntem desteğine başvurun. Hatanın nedenini belirlemek ve olası olduğunca oldukça malumat sağlamak için hangi adımları attığınızı açıklamaya çalışın. Bu, süreci büyük oranda hızlandıracaktır.

Sonuç

Gördüğünüz gibi, WordPress sitesinde 504 ağ geçidi vakit aşımı hatasını düzeltmenin bir oldukça değişik yolu ve tekniği vardır. Genellikle, bu sunucuyla alakalı bir sorundur ve bu durumda bu tarz şeyleri çözüme ulaştırmak için barındırma hizmetinize başvurmanız gerekir. Ancak bunların üçüncü taraf eklentilerinden ya da PHP çalışanlarınızın kuyruk / birikmiş taşmasından kaynaklanabileceğini anımsamak önemlidir.

Sizlerin bu hususta değişik çözüm önerileri var ise bize yorum bölümünde bildirebilirsiniz.