Lokala testmiljöer är mycket användbara verktyg för WordPress-utvecklare och webbplatsägare. Vi föredrar visserligen DevKinsta, vårt eget kostnadsfria lokala utvecklingsverktyg. MAMP är dock också ett utmärkt sätt att konfigurera en WordPress-instans på. Det enda problemet är att det kan vara svårt att göra så många tester när du inte kan komma åt din webbplats. Detta är precis vad ett MAMP HTTP-fel 500 innebär.

Det här felet är särskilt besvärligt eftersom det sällan ger någon användbar information eller tips om problemets källa. Du kan dock oftast spåra orsaken till PHP-fel, en skadad .htaccess-fil eller problematiska WordPress-plugins, som alla är relativt lätta att åtgärda.

I den här artikeln så utforskar vi orsakerna till det här felet och går igenom tre enkla felsökningssteg för att få din MAMP-installation på rätt köl igen. Låt oss köra igång!

En introduktion till HTTP-felet 500

Hypertext Transfer Protocol (HTTP) 500 Internal Server-felet är ett meddelande som ibland kan visas när du försöker ladda en sida.

Det är ett generiskt fel som är ett ”catch-all”-fel. I princip så kunde servern inte ladda sidan av en eller annan anledning. Den kunde dock inte heller bestämma sig för en mer specifik felkod:

Ett HTTP 500-fel i Google Chrome.
Ett HTTP 500-fel i Google Chrome.

Presentationen av felet kan variera beroende på vilken webbläsare som används, och vissa webbplatser har egna anpassade felsidor. Så det du möter kanske inte ser exakt ut som bilden ovan, men grunderna är desamma.

Det här är ett frustrerande fel, främst för att det är så vagt. Om det inträffar på en MAMP-installation så kan det vara ännu knepigare eftersom det finns fler potentiella orsaker.

Med WordPress generellt så är de vanligaste orsakerna till ett HTTP 500-fel inkompatibilitet mellan plugins och en korrupt eller saknad .htaccess-fil. Den här filen hanterar serverkonfigurationen, så problem där kan orsaka en mängd olika problem.

En annan möjlig källa som är specifik för fel på MAMP är när din webbplats stöter på ett PHP fatal-fel. Detta är ofta resultatet av felkonfigurerade filer eller felaktig kod. I dessa fall så kan du ofta kontrollera PHP-felloggen för din installation. Du gör detta genom att avslöja filen som orsakar problemet, liksom det specifika problemet med koden.

Hur du åtgärdar HTTP-felet 500 i MAMP

I det här avsnittet så går vi igenom felsökning av var och en av de potentiella orsakerna till HTTP-feket 500 på en MAMP WordPress-installation. Du bör följa dessa steg i tur och ordning och endast gå vidare till nästa lösning om problemet kvarstår.

Steg 1: Kontrollera PHP-felloggen och åtgärda kodproblem

Det första felsökningssteget som du bör vidta är att kontrollera PHP-felloggen för din MAMP-installation. Loggen är en textfil med en kronologisk lista över alla PHP-fel som installationen har stött på och, om det är PHP-kodproblem, i vilken fil som de har uppstått.

Du hittar den här filen i din MAMP-loggmapp. På Windows så är sökvägen C:MAMPlogs. På Mac så är det /Applications/MAMP/logs. När du är där så letar du efter filen som heter php-error:

PHP-felloggen i MAMP.
PHP-felloggen i MAMP.

Öppna filen och leta efter eventuella rader som indikerar problem. De kommer att börja med ”PHP Parse error”. De brukar även berätta exakt vad problemet är och vilken fil som det ligger i.

De problem som du upptäcker här kan variera. I det här exemplet från Stack Overflow hade användaren semikolon i slutet av vissa rader i den listade filen. Dessa borde ha varit kommatecken i stället. Genom att korrigera detta så löstes felet.

Om felloggen är tom, eller om korrigeringen av felen i den inte löser ”500-felet”, gå vidare till nästa steg.

Steg 2: Skapa en ny .htaccess-fil

Nästa steg är att försöka skapa en ny .htaccess-fil och se om detta löser problemet. Den här viktiga WordPress-filen finns i roten av mappen för din webbplats i MAMP-katalogen.

På Windows så är standardsökvägen till mappen för din webbplats C:MAMPhtdocs. På Mac är det /Applications/MAMP/htdocs.

När du är i mappen så hittar du .htaccess-filen:

htaccess-filen för Apache-konfiguration.
.htaccess-filen för Apache-konfiguration.

Byt namn på den här filen till något i stil med ”.htaccess-old”. Detta kommer effektivt att ta bort den från ekvationen när WordPress laddas. Försök sedan att ladda din webbplats igen. Om det fungerar så vet du att den här filen var boven i dramat.

Det sista steget är att skapa en ny .htaccess-fil. För att göra detta så går du till din WordPress-instrumentpanel och navigerar till Inställningar > Permalänkar:

Spara ändringar av permalänk i WordPress.
Spara ändringar av permalänk i WordPress.

Ändra inget på den här sidan. Scrolla istället bara ner och klicka på Spara ändringar. Detta kommer att återskapa .htaccess-filen, vilket är nödvändigt för att förhindra 404-fel på dina sidor. Vid det här laget så kan du tryggt radera filen som du bytte namn på tidigare.

Steg 3: Inaktivera och testa dina plugins

Om ingen av ovanstående felsökningsmetoder fungerar så är det sista steget att inaktivera alla plugins på din webbplats. Om detta löser problemet så kan du aktivera dem ett efter ett tills problemet återkommer. Då får du reda på vilket plugin som är boven i dramat. Som ett resultat så kan du leta efter ersättningar för detta eller kontakta dess utvecklare för att få hjälp.

Om du har tillgång till din WordPress-instrumentpanel så kan du göra detta genom att gå till Plugins > Installerade plugins. Markera dem alla och välj sedan Inaktivera från rullgardinsmenyn Massåtgärder högst upp på skärmen:

Använd Massåtgärder för att inaktivera alla plugins på en WordPress-webbplats.
Använd Massåtgärder för att inaktivera alla plugins på en WordPress-webbplats.

När de är inaktiverade så försöker du ladda den problematiska sidan igen. Om det fungerar så kan du nu gå tillbaka till listan över plugins och aktivera dem igen ett i taget genom att klicka på Aktivera.

När du har återaktiverat varje enskilt plugin så uppdaterar du sidan. Om den fortfarande laddas så fortsätter du med att återaktivera nästa plugin. Fortsätt den här processen tills felet återkommer och du vet vilket plugin som orsakar felet.

Om du inte har tillgång till din WordPress-instrumentpanel på grund av 500-felet så kan du inaktivera alla plugins via filsystemet. Gå tillbaka till din webbplatskatalog i MAMP och öppna mappen wp-content. Där inne så hittar du en mapp som heter plugins:

Byt namn på mappen plugins för att inaktivera alla plugins och återställa åtkomsten.
Byt namn på mappen plugins för att inaktivera alla plugins och återställa åtkomsten.

Byt namn på den här mappen till något som ”plugins-inaktiverade”, vilket effektivt inaktiverar allt som finns i den. Du bör nu ha tillgång till din WordPress-instrumentpanel.

Gå vidare och logga in där och ändra sedan namnet på mappen till ”plugins” igen. Detta ska göras medan instrumentpanelen fortfarande är öppen. De bör nu visas i listan Plugins på din instrumentpanel, och du kan fortsätta att inaktivera dem alla och testa dem ett i taget enligt ovan.

Sammanfattning

Ett meddelande om ett 500-fel kan få din WordPress-testning att stanna upp. Detta fel kan vara frustrerande, men det behöver inte bromsa in dig. Även om meddelandet i sig är kryptiskt så är den egentliga boven oftast lätt att hitta och åtgärda.

För att felsöka och åtgärda ett HTTP 500-fel i MAMP så kan du prova följande steg:

  1. Kontrollera MAMP’s fellogg och lös eventuella kodproblem som dyker upp.
  2. Generera en ny .htaccess-fil.
  3. Inaktivera alla dina WordPress-plugins och testa varje plugin för att se om det finns problem.

Om du vill utöka den felfria upplevelsen till din live-webbplats så kan du överväga att lägga upp den hos Kinsta. Våra planer för applikationshosting, databashosting och hanterad WordPress-hosting säkerställer att din webbplats alltid är tillgänglig när dina användare behöver den.

Och glöm inte att kolla in DevKinsta som ett kraftfullt alternativ till MAMP för lokala tester!