Sådan løser du effektivt fejlen “Backend Fetch Failed” 503
Det kan være super irriterende at støde på en 503 Backend Fetch Failed-fejl, især hvis du administrerer en travl hjemmeside. Grundlæggende set dukker denne op, når cachen eller serveren ikke kan hente data korrekt fra backend’en – måske fordi serveren er nede, eller der er et buggy plugin, der ødelægger tingene. Det er ikke altid din skyld; nogle gange er det bare serveroverbelastning eller et problem på hostingsiden. Men det er stadig værd at vide, hvordan man foretager fejlfinding, især hvis du kører WordPress, Magento eller en brugerdefineret opsætning. Normalt hjælper disse trin med at identificere, hvor problemet kan være, så du ikke bare sidder der og venter på, at hjemmesiden kommer tilbage uden en plan.
Sådan rettes fejl 503 i Backend Fetch mislykkedes
Metode 1: Kontroller, om serveren er overbelastet eller midlertidigt nede
Dette er den nemmeste løsning – hvis serveren bare er overbelastet med trafik eller under vedligeholdelse, kan du bare vente. Nogle gange efterlader hostingudbyderen en besked på deres statussider, så det er værd at kigge på dem først. Hvis det er en delt hosting, kan andre websteder bruge ressourcer, hvilket får dit websted til at mislykkes med at hente data. På nogle opsætninger kan det være en god idé at genindlæse et par gange eller prøve senere uden for spidsbelastningstiden.
Pro tip: Hvis du har SSH- eller konsoladgang, så tjek serverbelastningen med kommandoer som topeller htop. Hvis den er høj, er det sandsynligvis hovedårsagen. Og på nogle servere kan en hurtig genstart af webserveren eller PHP-FPM hjælpe, men kun hvis du er tryg ved det. For NGINX ville du køre sudo systemctl restart nginx; for Apache er det sudo systemctl restart apache2.
Metode 2: Deaktiver nyligt tilføjede plugins eller moduler
Hvis fejlen opstår efter installation eller opdatering af plugins, især til WordPress eller Magento, er det det første, du skal teste. Plugins eller moduler kan komme i konflikt med serverkonfigurationer eller overbelaste backend. Gå ind i dit administrationspanel eller via FTP/SFTP, og deaktiver dem en efter en. For eksempel, i WordPress, naviger til Plugins > Installerede plugins og deaktiver mistænkelige. Nogle gange går ældre plugins bare i stykker, fordi WordPress eller PHP er blevet opdateret. Hvis du bruger Magento, skal du deaktivere moduler via CLI, f.eks bin/magento module:disable Vendor_ModuleName..
På én opsætning virkede det, på en anden ikke så godt – så det er det værd at teste det. Når du har deaktiveret problematiske plugins, skal du opdatere siden og se, om fejlen forsvinder.
Metode 3: Ryd eller tøm servercachen forsigtigt
Denne her er lidt vanskelig – at tømme cachen kan fremskynde tingene, men også midlertidigt overbelaste serveren, hvis det ikke gøres rigtigt. Så gør kun dette, hvis du er rimelig sikker på, at cacheopbygning eller forældede data forårsager problemet.
For server-side caching (som Varnish eller NGINX cache), log ind på din cPanel eller SSH ind på din server. For at deaktivere Varnish midlertidigt, følg disse trin:
- Log ind på cPanel.
- Find afsnittet Web Accelerator.
- Klik på Administrer lak > Deaktiver lak.
- Tryk på Bekræft handling.
Tjek derefter din hjemmeside. Hvis den indlæses uden Varnish, er problemet forbundet med cachelaget. Husk, at du skal genstarte Varnish efter at have rodet med den, sudo systemctl restart varnishfor at ændringerne kan træde i kraft. Se også i logfiler med kommandoer som [mangler kontekst] $ varnishlog -q 'RespStatus == 503' -g requestfor at se, hvilke svar der forårsager problemet.
Metode 4: Forøg cache-tag-længden eller rediger cache-konfigurationer
Nogle gange overskrides standardlængden for cache-tags (omkring 8192 bytes) – hvilket forårsager 503-fejlen i nogle opsætninger, især med Magento eller kompleks caching. For at løse dette kan du forbedre parameteren http_resp_hdr_len i din Varnish-konfigurationsfil, som normalt findes på /etc/varnish/default.vcl. Her er et hurtigt eksempel:
vcl 4.0; parameters { http_resp_hdr_len = 16384; // or higher if you’re dealing with large cache tags }
Og glem ikke at genstarte lakken efter redigering:
sudo systemctl restart varnish
Hvis du bruger NGINX, skal du kigge efter proxy_buffersindstillingerne og justere dem om nødvendigt.Adobes supportartikel giver en god gennemgang specifikt for Magento-websteder.
Metode 5: Juster serverkonfigurationsfiler
Denne her er mere kompliceret, men…nogle gange forårsager den måde, din server (Varnish, NGINX eller Apache) er konfigureret på, fejlen. For eksempel, i Magento nginx.conf.sample(eller din brugerdefinerede NGINX-konfiguration), skal du kontrollere, om URI-handlerne er indstillet korrekt. Som et eksperiment kan du prøve at fjerne eller tilføje /pub i URL-matchningsblokkene, sådan her:
location ~ (index|get|static|report|404|503)\\.php$ { // your existing configs }
Og hvis du bruger Varnish, sørg for at .urlparameteren inkluderer eller udelader /pub efter behov. Husk at genindlæse den respektive tjeneste bagefter: sudo systemctl restart nginxor systemctl restart varnish.
Metode 6: Kontroller for konflikter forårsaget af andre websteder eller serverfejlkonfigurationer
Tro det eller ej, men andre websteder på en delt server kan forårsage problemer. En andens forkert konfigurerede plugin eller et defekt cron-job kan overbelaste din server, hvilket resulterer i 503-fejl. Det er værd at spørge hostingudbyderen, om de ser usædvanlige ressourcestigninger. Hvis du bruger en brugerdefineret vedligeholdelsestilstand (som Magentos maintenance.flag-fil), kan du også prøve at omdøbe eller slette den. Nogle gange kan en aktiv vedligeholdelsestilstand eller ufuldstændige opdateringer forårsage hentningsfejl.
Hvad hvis alt andet fejler? Kontakt dit hostingfirma
Hvis du har gennemgået alle disse, og fejlen stadig lurer, kan det være en god idé at kontakte hostingsupportteamet. Del de logfiler eller kommandoer, du har kørt, f.eks.GitHub-ressourcen eller logfiler fra varnishlog. De har ofte værktøjerne og indsigten til at identificere problemer på serversiden hurtigere. Nogle gange er problemet slet ikke din, men blot et midlertidigt serverproblem.
Oversigt
- Tjek serverbelastningen og vent, hvis den er optaget
- Deaktiver mistænkelige plugins eller moduler
- Ryd serverens cache (forsigtigt)
- Juster cache- eller serverkonfigurationer for at håndtere store headere
- Gennemgå serverkonfigurationsfiler for URL-håndtering
- Undersøg konflikter forårsaget af andre websteder eller fejlkonfigurationer af servere
- Kontakt hosting support, hvis alt andet fejler
Opsummering
For det meste skyldes denne fejl serveroverbelastning eller forkert konfigureret caching. Hvis disse justeringer ikke løser problemet med det samme, er det normalt nok at vente eller lade nogle cachelag hoppe tilbage. Det er lidt mærkeligt, hvordan en lille konfigurationsændring eller plugin-deaktivering nogle gange kan løse et nedbrud som dette, men sådan fungerer server-ting bare. Krydser fingre for, at dette hjælper en person med et rodet websted med at finde klarhed og komme hurtigere online igen.