Hur man åtgärdar ett allvarligt fel: Maximal exekveringstid överskrids i WordPress
Om du ser ”Fatal Error: Maximum Execution Time Exceeded” (dödligt fel: maximal exekveringstid överskrids) när du går in på din WordPress-webbplats betyder det att en del av din WordPress-kod tar för lång tid att exekvera. Det finns en maximal exekveringstid för PHP-skript. Om ett skript tar längre tid uppstår detta ödesdigra fel. För att åtgärda det måste du öka WordPress max_execution_time.
Ordet ”Fatal Error” kan vara alarmerande, men gladeligen kan du åtgärda det här problemet med lite ansträngning.
Den här guiden visar dig en snabb lösning för problemet med fatal error: maximum execution time exceeded så att du kan få din webbplats online igen. Vi visar dig också en mer grundlig lösning som hjälper dig att lokalisera och lösa det underliggande problemet.
I den här artikeln:
- Vad orsakar Fatal Error:
- Den snabba lösningen (sluta se felet och få din webbplats online igen)
- Den bättre lösningen (hitta det underliggande problemet och åtgärda det för att få din webbplats online igen)
- Disaktivera dina plugins
- Disaktivera det för närvarande aktiva temat
Vad orsakar Fatal Error: Maximal exekveringstid överskrids i WordPress
Webservrar sätter en tidsgräns för hur länge ett skript kan köras. Detta görs för att förhindra att webbservern missbrukas. Eftersom WordPress består av PHP-skript måste varje skript köras helt inom den inställda tidsgränsen.
Denna tidsgräns är vanligtvis 30 sekunder och i de flesta fall är detta mer än tillräckligt med tid för ett skript att köras. Men om ett PHP-skript körs längre än den fastställda tidsgränsen avbryter PHP utförandet. Det returnerar då meddelandet fatal error: maximum execution time exceeded.
Den snabba lösningen (sluta se felet och få din webbplats online igen)
Då det här felet indikerar att den inställda tidsgränsen inte räcker till för att ett av dina skript ska kunna köras, kan du snabbt åtgärda det genom att öka tidsgränsen.
Det enklaste sättet att öka tidsgränsen är genom att installera insticksmodulen WP Maximum Execution Time Exceeded. Allt du behöver göra är att installera insticksprogrammet och din tidsgräns ökas. Om du i framtiden vill återställa tidsgränsen till standardvärdena är det bara att avinstallera insticksprogrammet.
Detta insticksprogram ökar din tidsgräns för exekvering genom att lägga till en konfiguration i din .htacess-fil.
Om du föredrar att inte lägga till ett insticksprogram för något så här enkelt kan du helt enkelt öka WordPress max_execution_time direkt i din .htaccess-fil (vi rekommenderar det här alternativet).
För att göra det här ska du få tillgång till din server med hjälp av FTP och öppna mappen som innehåller dina WordPress-filer.
I den här mappen ska du söka efter .htaccess-filen. När du hittar den högerklickar du på den och klickar på Visa/Redigera.
Nästan lägger du till den här raden längst ner i filen (detta ökar tidsgränsen från 30 sekunder till 2 minuter):
php_value max_execution_time 120
Spara nu filen och stäng den. FileZilla kommer att uppmana dig att ladda upp den nya filen. Klicka på Yes.
Och så kan du manuellt öka gränsen för exekveringstiden. du kan också öka max_execution_time i WordPress genom att redigera filen wp-config.php.
Den bättre lösningen (hitta det underliggande problemet och åtgärda det för att få din webbplats online igen)
Lösningen ovan löser problemet med maximal exekveringstid överskattad, men det är i huvudsak en patch. Du ökar minnesgränsen för att tillgodose ett skript som tar för lång tid att köra.
Den bättre lösningen är att hitta skriptet som tar för lång tid att köra och göra dig av med det.
Det är mycket osannolikt att det är ett av dina WordPress-skript som bär skulden. Dessa skript är kodade enligt stränga standarder.
Du bör därför titta på dina teman och insticksprogram för att hitta det tidskrävande skriptet.
Om du redan har ökat tidsgränsen i steget ovan vill du först återgå till standardvärdet (antingen genom att avinstallera insticksprogrammet eller genom att radera raden du lade till i .htaccess). Detta kommer att leda till att problemet återkommer, men det är vad vi vill ha.
Desaktivera dina insticksprogram
För att spåra problemet börjar vi med dina insticksprogram. Om problemet försvinner när du inaktiverar dina plugins är det ett felaktigt skript i en av dina plugins som bär skulden. Läs den här artikeln för att lära dig hur du inaktiverar plugins och hur du hittar just det plugin som orsakar ditt problem: Om du kan hitta insticksprogrammet som innehåller det tidskrävande skriptet tar du helt enkelt bort det. Om du behöver den funktionalitet som erbjuds av insticksprogrammet kan du alltid skaffa ett annat med liknande funktioner.
Disaktivera ditt för närvarande aktiva tema
Om inaktivering av dina insticksprogram inte löste problemet är det troligen ditt aktiva tema som bär skulden. Följ den här guiden: Om inaktivering av ditt tema tar bort felet, finns det felaktiga skriptet i ditt tema. Du måste ta bort temat och installera om en ny kopia eller använda ett helt annat tema.
Fatal Error: Slutsats
Avaktivera dina insticksprogram och (eller) ditt aktiva tema för att hitta skriptet som tar för lång tid att köra. Att ta bort det här skriptet är den verkliga lösningen på det här dödliga felet.
WordPress max_execution_time finns på plats för att förhindra missbruk av servern, så att öka den är en fungerande lösning, men inte riktigt en lösning. Det är bara en väg runt problemet.
Om felet kvarstår efter att du har inaktiverat teman och insticksprogram kan du använda den snabba lösningen (öka tidsgränsen) för att få din webbplats online igen för tillfället, medan du försöker hitta och ta bort det långsamladdande skriptet.
En sak att tänka på är om du nyligen har gjort något utvecklingsarbete på din WP-webbplats. Om så är fallet kan ett av de skript som lagts till på din webbplats orsaka problemet.
Och även om det är högst osannolikt att det är en kärnfil i WordPress som är ansvarig, kan du överväga att uppdatera WordPress för att se om detta tar bort skriptet för långsam laddning.