Som besøgende eller ejer af et websted kan det være forvirrende at se fejlen 502 Bad Gateway, da det specifikke problem ikke er klart. Dette er en populær, generisk HTTP-statuskode. Hvis du antager, at din internetforbindelse er i orden, betyder det, at du ser denne meddelelse, at der højst sandsynligt er et serverkommunikationsproblem. Og resultatet er, at du ikke kan se den webside, du har anmodet om.
Selvom 502-fejlen typisk er et problem på serversiden, kan årsagen lejlighedsvis ligge i klientens ende. I denne artikel hjælper vi dig med at komme til bunden af dette mysterium ved at prøve simple klient-side tips. Du vil enten løse problemet eller komme tættere på at forstå årsagen.
502 Dårlig Gateway Betydning
Hver gang du forsøger at få adgang til en webside, beder din browser grundlæggende webserveren om at få adgang til siden. Webserveren vil derefter behandle din anmodning og returnere den ressource, du bad om, sammen med en HTTP-header og HTTP-statuskode.
Men hvis der er et serverproblem, modtager du muligvis en af flere forskellige 500-fejlkoder. Alle angiver et problem med serveren. Derfor var 502 Bad Gateway-fejlen – anmodningen fra klienten (din browser) – god, men serveren var ikke i stand til at returnere den ressource, der blev bedt om.
502 Dårlig gateway-fix
Her er nogle tips, du kan prøve fra din webbrowser for forhåbentlig at fjerne 502 Bad Gateway-fejlen og få vist din webside.
1. Prøv at genindlæse siden
Fejlen kan være forårsaget af en fejl med serveren i modsætning til en fejl, og problemer med serverforbindelsen kan i de fleste tilfælde løses rimeligt hurtigt.
Start med at genindlæse siden – klik på den cirkulære pil nær URL-adresselinjen. I Chrome og Safari er det til venstre, i Firefox er det til højre. Vent et minut eller deromkring, før du genindlæser siden. Hvis websiden vises, er problemet forsvundet.
En anden hurtig ting, du kan prøve, er at åbne en ny browsersession. Luk alle dine åbne browservinduer, åbn derefter et nyt vindue, og prøv at navigere til websiden igen.
start-knappen fungerer ikke i Windows 10
2. Prøv at rydde din browsercache
Din webbrowser gemmer oplysninger fra hvert websted, du besøger, i browserens cache. Hver gang du besøger et websted igen, indlæses siderne hurtigere, fordi din browser bruger det, der er gemt i cachen.
Denne opsætning er dog ikke altid en god ting. Hvis din browsers cache har en forældet eller beskadiget version af webstedet, kan dette forårsage 502-fejlen. Overvej at rydde din browsers cache for at få den mest opdaterede version af de websider, du forsøger at nå. Sådan gøres det:
Chrome
- I dit Chrome-browservindue skal du klikke på menuen med tre prikker øverst til højre.
- Vælg indstillingen Flere værktøjer.
- Vælg Ryd browserdata...
- I pop op-vinduet Ryd browserdata skal du sikre dig, at kun indstillingen Cachelagrede billeder og filer er markeret, beslut dig for tidsintervallet og derefter Ryd data.
Firefox
- I dit Firefox-browservindue skal du klikke på hamburgerikonet øverst til højre.
- Klik på Historik.
- Vælg Ryd seneste historik...
- I pop op-vinduet skal du vælge Alt i rullemenuen Tidsinterval for at rydde.
- Sørg for, at kun feltet Cache er markeret, og derefter Ryd nu.
Safari
For at tømme cachen i din Safari-browser skal Udvikl-menuen aktiveres. At gøre dette:
- Gå til Præferencer og derefter Avanceret.
- Marker feltet Vis udviklingsmenu på menulinjen.
- Gå til Udvikl og derefter Tøm caches.
502 Bad Gateway i NGINX
PHP-FastCGI Process Manager (PHP-FPM) er en baggrundsproces til håndtering af webserveranmodninger til PHP-apps. NGINX sender webanmodninger til PHP-FPM-arbejdsprocesser, der udfører PHP-applikationen. NGINX returnerer en 502 Bad Gateway-fejl, når den ikke kan uddelegere en anmodning til PHP-FPM, eller hvis PHP-FPM ikke reagerer.
Her er de mest almindelige årsager til, at NGINX returnerer en 502-fejl:
- PHP-FPM kører ikke.
- NGINX er ikke i stand til at kommunikere med PHP-FPM.
- PHP-FPM udløber.
Lad os nu se, hvordan man bekræfter, om noget af ovenstående er problemet, og hvordan man løser det.
1. Tjek, om PHP-FPM kører
Når PHP-FPM ikke kører, returnerer NGINX en 502-fejl til alle anmodninger, der er beregnet til at nå PHP-applikationen. Du kan bruge en ps-kommando via en Linux-vært til at kontrollere, om der kører PHP-FPM-processer. Kommandoen er:
|_+_|.
Hvis resultaterne fra denne kommando ikke viser nogen PHP-FPM-pulje eller primære processer, skal PHP-FPM køre for at rette 502-fejlene. For at gøre din PHP-app mere pålidelig, overvej at bruge systemd til at administrere PHP-FPM som en service i dit produktionsmiljø. PHP-FPMs baggrundsproces begynder automatisk at betjene din PHP-app, når en ny instans åbner, eller din server starter.
Da PHP-FPM er indbygget i PHP-koden, kan du tilføje den som en systemd service, når du opsætter PHP. Når projektet er sat op som en tjeneste, skal du bruge denne kommando til en automatisk start:
|_+_|.
2. Tjek, om NGINX har adgang til soklen
Når PHP-FPM starter, genererer den Unix- eller TCP-sockets for at oprette forbindelse til NGINX-webserveren. PHP-FPM-arbejdsprocesserne har brug for sockets for at lytte efter NGINX-anmodninger. Sørg for, at PHP-FPM og NGINX er indstillet til at bruge den samme socket
PHP-FPM bruger en anden konfigurationsfil pr. procespulje. For at finde disse filer gå til:
|_+_|.
Pool-stik er skitseret i en lytteinstruktion i dens konfigurationsfil, f.eks. følgende lytteinstruktion konfigurerer en pulje kaldet mypool til at bruge en Unix-socket fundet på: /run/php/mypool.sock :
|_+_|.
Hvis NGINX ikke er i stand til at få adgang til en pools socket, kan du finde ud af, hvilken worker-pool det er ved at undersøge, hvilken socket der er angivet i NGINX-fejlloggen. Hvis PHP-FPM ikke startede mypool-arbejderpuljen, for eksempel, ville NGINX sende en 502-fejl, og logindgangen ville ligne denne:
|_+_|() til unix: :/run/php/mypool.sock mislykkedes (2: Ingen sådan fil eller mappe).
hvordan kan jeg vide, om nogen har blokeret mig på facebook
3. Tjek, om PHP-FPM udløber
Når din ansøgning tager for lang tid at svare, vil brugerne modtage en timeout-fejl. Hvis PHP-FPM's timeout - fastsat i puljens konfiguration (request_terminate_timeout) instruktion - er mindre end NGINX's timeout, vil NGINX returnere en 502 fejl.
Du kan øge PHP-FPMs timeout-indstilling i poolens konfigurationsfil. Dette kan dog forårsage et andet problem: NGINX kan få timeout, før du får et svar fra PHP-FPM.
NGINX's standard timeout er 60 sekunder. Hvis du har øget PHP-FPM timeout over 60 sekunder, og din PHP app ikke har haft tid til at svare, vil NGINX udstede en 504 Gateway Timeout fejl. Undgå dette ved at øge din NGINX timeout-indstilling.
502 Bad Gateway i Cloudflare
Cloudflare returnerer en 502-fejl, når den ikke er i stand til at starte en gyldig forbindelse med dit websteds kildewebserver, eller hvis Cloudflare-tjenesten ikke er tilgængelig eller konfigureret forkert. De mest almindelige årsager omfatter:
- Kildeserveren er overbelastet med for mange serverbelastninger, der udløser servernedetid
- WordPress-websteder med lave PHP-hukommelsesgrænser eller for mange MYSQL-forbindelser kan få serveren til at indlæse langsomt
- Forkerte DNS-registreringer, plugin- eller temakonflikter i WordPress, og servicefejl f.eks. PHP-FPM og cache-tjenester
Prøv følgende tips til at løse 502 Bad Gateway-fejlen fra Cloudflare:
1. Genindlæs siden og ryd din cache
Genindlæsning af websiden bør være den første ting, du prøver for en fejlmeddelelse. 502-fejlen kan specifikt være resultatet af, at serveren er overbelastet, hvilket forårsager midlertidige forbindelsesproblemer. Vent et minut eller deromkring, før du genindlæser siden; dette løser det typisk.
Hvis 502-fejlen stadig vises, skal du rydde din browsers cache og derefter prøve igen. Tryk længe på Ctrl + F5 for Windows- og Linux-browsere. For Chrome og Safari på Mac er det Cmd + Shift + R.
2. Tjek dit plugin/tema for konflikter
Hvis du bruger WordPress, kan 502-fejlen skyldes et forkert konfigureret plugin. For at fejlfinde, om dette er årsagen, skal du deaktivere dine plugins - ingen data går tabt.
- Log ind på din WordPress-konto.
- Vælg Plugins fra sidebjælken.
- Anvend en deaktivering på alle dine plugins.
Hvis 502-fejlen er løst, skal du finde ud af, hvilket plugin der er et problem. For at gøre dette skal du genaktivere pluginsene individuelt. Efter at have genaktiveret hver enkelt, genindlæs websiden. Når Cloudflare-fejlen opstår igen, ved du, hvilket plugin der er synderen. Du kan anmode om hjælp fra plugin-udvikleren ved at sende en billet i WordPress.
Sørg for, at dine temaer og plugins er de nyeste versioner, og at din PHP-version er understøttet.
3. Deaktiver midlertidigt dine firewalls og CDN
Problemet kan være forårsaget af Content Delivery Network (CDN) eller firewalls. Dette er et almindeligt problem hos udbydere med ekstra firewall-lag som Cloudflare. Du kan enten tjekke Cloudflares online statusside for information om eventuelle problemer med deres tjeneste, eller du kan kontakte dem.
Hvis det er bekræftet, at problemet er med dine firewalls eller CDN, kan du prøve at deaktivere dem midlertidigt og derefter aktivere dem.
4. Tjek dine DNS-servere
Nogle gange kan dine Domain Name System-servere (DNS) returnere 502-fejlen, fordi dit websteds domæne muligvis ikke peger på den rigtige IP-adresse. Hvis du for nylig har flyttet dit websted til en anden hosting-tjeneste, skal du vente i mindst 24 timer, før udbredelsen over internettet er fuldført.
Hvis dette ikke er tilfældet, for at rydde IP-adresser og andre DNS-poster fra din lokale DNS-cache kan du prøve at tømme den, sådan her:
- Start et kommandovindue.
- Indtast |_+_|.
Eller via en Mac:
- Åbn et terminalvindue.
- Indtast |_+_|.
502 Dårlig gateway løst!
Fejlmeddelelsen 502 Bad Gateway er et standardsvar, når der er noget galt med kommunikationen mellem de servere, der er involveret i at returnere din webanmodning.
500-fejlmeddelelsen betyder typisk, at der er et problem med serversiden af centralen. Men til tider kan årsagen være med brugerens lokale computerudstyr og/eller netværksopsætning. Heldigvis er dette en meget almindelig fejl, og der er masser af ting, du selv kan prøve for at få din webside vist, eller i det mindste bringe dig tættere på at forstå årsagen.
Hvilke andre fejlmeddelelser har du oplevet, når du besøger websider? Blev problemet løst? Fortæl os det i kommentarfeltet.