Fixa det fruktade ’interna Serverfelet’ i WordPress (2021)
- av Colin nykomling
- Senast uppdaterad: Mars 26, 2021
vi har alla varit där — en webbplats som fungerade perfekt bra bara några sekunder sedan plötsligt bestämmer sig för att kasta en passform och spottar ut en intern server fel. Om du har tur fungerar WordPress-administratören fortfarande, men i vissa fall kan även det vägra att samarbeta. I den här artikeln kommer vi att förklara vad ett internt serverfel är och, ännu viktigare, hur man åtgärdar det.
viktigt: gör alltid en fullständig säkerhetskopia av din webbplats (även om den inte fungerar som den ska vara) innan du gör några ändringar — bättre säkert än ledsen!
Låt oss få sprickbildning.
Vad är ett internt serverfel?
interna serverfel är irriterande för både användare och utvecklare eftersom de inte ger någon information om roten till problemet — de säger bara att det finns en. Tänk om du gick till doktorn och sa att du kände smärta, men vägrade att avslöja var den smärtan var — det skulle göra det mycket svårt för läkaren att behandla det! Det är svårigheten med ett internt serverfel — det finns ingen indikation på var problemet kommer ifrån.
(klicka för att förstora)
dessutom kan namnet ’Internt serverfel’ vara vilseledande, eftersom din värd (och/eller server) i nästan alla fall inte är skyldig. Om du tittar på HTTP-specifikationerna kan du se att ett internt serverfel betyder följande:
servern stötte på ett oväntat tillstånd som hindrade den från att uppfylla begäran.
det är inget fel med servern själv — det har helt enkelt stött på något som det inte kan räkna ut.
för att ta reda på vad som händer måste du göra lite felsökning och försök och fel. Genom att systematiskt gå igenom de saker som kan gå fel kan du ta reda på vad som orsakar problemet och, ännu viktigare, hur man åtgärdar det.
så här fixar du WordPress 500 Internt serverfel
vi rekommenderar att du utför dessa steg i ordning. Det är, Börja på Steg #1 och arbeta dig igenom listan. I några situationer ber vi dig att hoppa framåt baserat på resultaten från ett av stegen. Men i allmänhet, gå från topp till botten!
utöver det, bara en påminnelse om att vi alltid rekommenderar att du säkerhetskopierar din webbplats innan du gör några av ändringarna på den här listan. Om du inte kan komma åt din WordPress-instrumentpanel för att använda ett backup — plugin, bör du fortfarande kunna skapa en säkerhetskopia via din värdpanel-fråga värdens support om hjälp om du inte är säker på hur.
Låt oss nu fixa …
aktivera felsökning
det första steget bör vara att åtminstone försöka förstå felet — du kan ha tur! Beroende på hur din server hanterar fel kan det du ser inte vara ett serverfel alls. Istället kan det vara ett fel i webbplatsens kod (vanligtvis koden för ett plugin eller tema).
för att se om så är fallet måste du redigera filen wp-config.php
i webbplatsens rotkatalog:
- ladda ner filen (via FTP).
- öppna den (med en textredigerare).
- Sök efter
WP_DEBUG
.
om raden redan finns, ändra false
till true
och ladda upp filen igen till servern.
om den här raden inte finns i din konfigurationsfil, skapa den genom att lägga till följande kodrad någonstans ovanför raden som säger /* That's all, stop editing! Happy blogging. */
:
define( "WP_DEBUG", true );
ladda om din webbplats och se om felet ändras. Om det gör det, och du nu ser ett ’dödligt fel’ – meddelande som pekar på en viss kodrad i en specifik fil, tittar du på ett relativt enkelt kodfel. Om du antar att felet kommer från ett plugin eller tema måste du inaktivera den kränkande produkten och/eller arbeta med att lösa problemet själv (eller låt någon annan ta en titt på det om du inte kan ta reda på vad som händer på egen hand).
Obs: När du är klar med det här steget, se till att ändra WP_DEBUG
värdet tillbaka till false
, så att du inte av misstag lämnar felsökningsläge aktiverat. Som standard visas felsökningsmeddelanden på hela webbplatsen, vilket är förvirrande för dina besökare och en potentiell säkerhetsrisk.
kontrollera om din WordPress-instrumentpanel fungerar
nästa steg är att testa om du kan komma åt din backend WordPress-instrumentpanel eller inte.
besök din webbplats admin på http://yoursite.com/wp-admin/
. Om den här sidan laddas ordentligt och låter dig logga in kan du vara ganska säker på att problemet är med ett plugin eller med ditt tema. Om administratören laddar fortsätter du till steg två. Om det inte gör det, hoppa till steg fyra.
inaktivera alla Plugins
därefter är det dags att testa om problemet kommer från ett plugin. Det finns nästan inget sätt att ett plugin kan orsaka problem om det är inaktiverat, så det enklaste sättet att testa detta är att inaktivera alla dina plugins på en gång. Detta tar inte bort dina plugins, och det kommer inte heller att göra att du förlorar någon av dina data (som fortfarande lagras säkert i din databas). Vad det kommer att göra är att inaktivera deras kod från att köra, vilket kommer att lösa problemet om ett plugin-kod utlöser det interna serverfelet.
om din WordPress-instrumentpanel fungerar bra kan du inaktivera plugins genom att följa dessa steg:
- gå till Plugins-området i din WordPress-instrumentpanel.
- använd kryssrutan för att välja alla plugins.
- använd rullgardinsmenyn Massåtgärder för att inaktivera dem.
- Klicka På Verkställ.
om du av någon anledning inte kan inaktivera plugins via din instrumentpanel kan du också inaktivera dem via FTP genom att följa dessa instruktioner:
- Anslut till din WordPress-webbplats server via FTP.
- navigera till mappen
wp-content
. - Byt namn på mappen
plugins
tillplugins-deactivated
.
om du har inaktiverat alla dina plugins och din webbplats fortfarande inte laddas, gå till steg tre.
om din webbplats är igång är nästa steg att ta reda på vilket specifikt plugin som orsakar problem.
för att göra detta måste du återaktivera dina plugins en efter en. Fortsätt kontrollera det interna serverfelet efter att ha aktiverat varje plugin. När du har hittat den skyldige kan du bestämma vad du ska göra med det. Det bästa tillvägagångssättet är att hålla plugin inaktiverat och meddela författaren omedelbart. Om det är ett uppdragskritiskt plugin bör du förmodligen leta efter ett bättre, stabilare alternativ.
Obs: Om du inaktiverat dina plugins via FTP, måste du byta namn på mappen tillbaka till den ursprungliga plugins
namn innan du kan börja återaktivera plugins.
i vissa mycket sällsynta fall kan körning av gammal programvara som PHP 5.3 orsaka problem. Innan du byter ut ett plugin som visat sig vara pålitligt hittills, ta en titt på steg sju.
Byt till ett standardtema
om inaktivering av dina plugins inte löste problemet kan ditt tema också vara den skyldige. Du kan verifiera detta genom att byta till ett standard WordPress-tema. Vi rekommenderar att du använder Twenty Twenty, vilket är det senaste standardtemat.
om du fortfarande kan hantera teman från din WordPress-instrumentpanel kan du göra det genom att gå till utseende – > teman. Om du redan har tagit bort standardtemat kan du installera om det från WordPress.org.
om du inte kan byta teman från din WordPress-instrumentpanel kan du också utföra detta via FTP genom att följa dessa instruktioner:
- Anslut till din WordPress-webbplats server via FTP.
- navigera till mappen
wp-content/themes
. - om du inte har Twenty Twenty-temat installerat kan du installera det genom att ladda upp temamappen som du laddar ner från WordPress.org (se till att extrahera ZIP-filen innan du laddar upp mappen).
- Byt namn på mappen för ditt nuvarande tema till
-deactivated
.
när du byter namn på mappen för ditt aktiva tema kommer WordPress automatiskt att falla tillbaka till standardtemat (så länge standardtemat är installerat).
om du byter till tjugo tjugo löser problemet kan du återaktivera alla plugins och komma igång med att hitta problemet i ditt temas kod.
om ditt tema är från antingen det officiella temaförvaret eller en oberoende temabutik, bör du meddela författaren så snart som möjligt. Om det å andra sidan är ditt eget tema måste du få en utvecklare att hjälpa dig, eftersom dessa buggar ofta kan vara mycket svåra att hitta — även för erfarna kodare.
i vissa mycket sällsynta fall kan körning av gammal programvara som PHP 5.3 orsaka problem. Innan du spenderar timmar på att försöka hitta ett fel eller betala hundratals dollar till en utvecklare, ta en titt på steg sju.
öka din minnesgräns
om din webbplats använder för mycket minne kommer det definitivt att passa — vilket möjligen resulterar i ett 500 Internt serverfel. I många fall är detta ett tecken på ett dåligt kodat tema eller plugin. Det kan åtgärdas snabbt genom att öka minnesgränsen, men det här är inte ett säkert sätt att lösa problemet och kommer inte till roten till det.
du kan försöka att manuellt öka din minnesgräns. Tänk dock på att din server eller ditt konto kan ha en viss mängd minne som tilldelats det och du kommer inte att kunna öka din minnesgräns utöver det.
det finns några sätt du kan gå om att öka din gräns:
-
wp-config.php
fil -
PHP.ini
fil (om du har tillgång-du kanske inte) -
.htaccess
fil
för alla dessa filer måste du redigera dem genom att ansluta till din server via FTP och lägga till ett kodavsnitt (eller ändra värdet på ett befintligt kodavsnitt om det redan finns). Här är vad du ska lägga till:
wp-config.php-fil
Lägg till följande kodavsnitt ovanför raden som säger /* That's all, stop editing! Happy blogging. */
:
define('WP_MEMORY_LIMIT', '256M');
PHP.ini
hitta raden som säger memory_limit = M
och ändra numret till 256
. Till exempel memory_limit = 256M
.
.htaccess-fil
Lägg till följande rad:
php_value memory_limit 256M
Alternativt kan du prata med din värd för mer specifika instruktioner — vissa kommer mer än gärna att öka din minnesgräns med nästan inget krångel från din sida.
felsöka .htaccess-problem
om din värd använder Apache-servern (vilket de flesta WordPress-värdar gör, särskilt i budgetänden), är filen .htaccess
en konfigurationsfil som möjliggör en relativt avancerad funktionalitet. Med den kan du aktivera gzip-komprimering, ändra maximal uppladdningsstorlek, ställa in omdirigeringar och göra alla möjliga andra praktiska saker. WordPress använder också den här filen för att hantera webbplatsens permalänkar, bland andra funktioner.
vi har redan skrivit en guide om hur man redigerar .htaccess-fil, men det är värt att upprepa att detta är ett känsligt område som kräver försiktighet. Ett stavfel, ett glömt utrymme eller ett oavslutat citat, till exempel, kan lätt orsaka ett 500 Internt serverfel, slipning av din webbplats — inklusive din administratör — till ett stopp.
det finns ett enkelt sätt att kontrollera om den här filen har fel:
- Anslut till din server via FTP och hitta filen
.htaccess
, som finns i rotmappen. - säkerhetskopiera den befintliga filen genom att ladda ner den till din dator.
- när du har säkerhetskopierat originalfilen, ta bort kopian av
.htaccess
som finns på din server.
om din webbplats kommer tillbaka online, är problemet med din .htaccess
– fil. Om du inte har några anpassade .htaccess
– regler (t.ex. anpassade omdirigeringar) kan du tvinga WordPress att skapa en ny .htaccess
— fil genom att gå till Inställningar – > permalänkar och klicka på Spara (du behöver inte ändra några inställningar-klicka bara på Spara-knappen med dina befintliga inställningar).
om du har anpassade regler kan du gå igenom filen .htaccess
rad för rad för att se när din webbplats går ner. När du har hittat den kränkande raden, se till att den inte har någon onödig text (kanske ett oavslutat citat eller något liknande). Om du inte hittar problemet vill du förmodligen bara ta bort raden. Din webbplats är helt nere är mycket värre än en saknad .htaccess
linje — fråga runt på forum om du behöver mer hjälp.
för att spara tid kan du också använda detta gratis .htaccess syntax checker, som automatiskt kan fånga många fel/skrivfel på låg nivå.
installera om WordPress
det är extremt sällsynt, men du kan ha några skadade filer i WordPress-kärnan. Det här är inte något att oroa sig för — något kan ha gått fel när din server kopierade de nödvändiga filerna, till exempel. Att ladda upp WordPress-kärnfilerna igen kan lösa ditt problem.
så här installerar du om WordPress-kärnfilerna:
- ladda ner en ny kopia av WordPress från WordPress.org.
- extrahera ZIP-filen.
- ta bort mappen
wp-content
och filenwp-config-sample.php
. Se också till att det inte finns enwp-config.php
– fil (och ta bort en om det finns). Den här filen borde inte vara där, men det är alltid bra att dubbelkontrollera! - Anslut till din server via FTP.
- Ladda upp de återstående filerna och mapparna till rotmappen.
- när du uppmanas av ditt FTP-program, berätta för det att skriva över alla filer.
kontrollera om PHP-Versionsproblem
medan gamla PHP-versioner vanligtvis inte orsakar det interna serverfelet kan det vara värt att prata med din värd och be dem att ge dig en nyare version innan du spenderar värdefull tid och pengar. PHP 7 har föråldrat några tidigare funktioner-till exempel kan ett plugin använda en funktion som inte är tillgänglig i äldre versioner av PHP, och så vidare.
fråga din värd vilken version av PHP du kör. Från och med September 2020 får PHP 5.6 inte längre några uppdateringar (inte ens grundläggande säkerhetsstöd) — acceptera det inte om din värd kör din webbplats på en så gammal version. Du borde åtminstone ha någon variant av PHP 7 som körs. Helst vill du vara på PHP 7.3+ eftersom PHP 7.0 inte längre får uppdateringar och till och med PHP 7.2 kommer sluta ta emot säkerhetsfixar i slutet av 2020.
Ingenting Fungerar? Test för sammansatta problem
även om det är osannolikt att du kommer att ha två problem på en gång, kan det hända. Du kan ha ett plugin som orsakar ett problem, liksom ett .htaccess
– problem. I det här fallet kommer problemet inte att lösas när du inaktiverar alla plugins och det kommer inte att lösas om du tar bort din .htaccess
— fil-bara om du gör båda.
om du har följt dessa steg och du fortfarande får ett 500 Internt serverfel, bör du börja om och se till att inte ångra några ändringar. Håll dina plugins inaktiverade, håll ditt tema bytt till tjugo tjugo, och så vidare.
genom försök och fel kan du upptäcka kombinationen av problem som orsakar problem.
Frustrerad Av Att Hantera Fel? Prova Managed WordPress Hosting
som du kan se går mycket arbete till felsökning av vanliga WordPress-fel som 500 internal server error. Om du inte vill behöva hantera dessa problem själv (och du är villig att betala lite mer för bekvämligheten) kan det vara ett bra beslut att flytta din webbplats till hanterad WordPress-värd.
en högkvalitativ hanterad WordPress-värd övervakar proaktivt för dessa typer av fel och fixar dem så att din webbplats fungerar. Till exempel får supportpersonalen på Kinsta, en av våra rekommenderade hanterade WordPress-värdar, automatiskt aviseringar om din webbplats är nere på grund av ett internt serverfel. Dessutom, eftersom dessa värdar erbjuder mer av en premiumprodukt, kommer deras supportpersonal att vara mer villiga att investera tid i felsökning av problemet för dig.
naturligtvis är nackdelen att du definitivt betalar lite mer än vad du skulle göra för billig delad hosting. Vanligtvis börjar en kvalitetshanterad WordPress-värd på cirka $30 per månad. Fortfarande, om du värdesätter sinnesfrid, kan det priset vara värt det, särskilt för en företagswebbplats där stillestånd innebär förlorade intäkter.
slutliga tankar
på grund av vagheten i det interna serverfelmeddelandet kan det vara svårt att lösa det, men genom att följa stegen ovan bör du så småningom kunna ta reda på vad som går fel.
om du fortfarande inte kan lösa problemet, kontakta din värd. Länk till den här artikeln och låt dem veta att du har provat dessa steg, eftersom de kommer att uppskatta ansträngningen och kommer att kunna hitta problemet mycket snabbare!
har du sett några kantfall eller helt konstiga saker som händer i samband med detta fel? Låt oss veta i kommentarerna!