Ha a WordPress webhelyed elérésekor a “fatal error: Maximum execution time exceeded” (végzetes hiba: a maximális végrehajtási idő túllépése) üzenetet látod, az azt jelenti, hogy a WordPress kódod egy része túl sokáig tart a végrehajtás. A PHP-szkriptek számára létezik egy maximális végrehajtási idő. Ha egy szkript hosszabb ideig tart, ez a végzetes hiba lép fel. A hiba kijavításához növelnie kell a WordPress max_execution_time értékét.
A “Végzetes hiba” szó riasztó lehet, de örömmel, kis erőfeszítéssel orvosolhatja ezt a problémát.
Ez az útmutató megmutatja a fatal error: Maximum execution time exceeded probléma gyors megoldását, hogy újra online legyen a webhelye. Mutatunk egy alaposabb javítást is, amely segít megtalálni és megoldani a mögöttes problémát.
Ebben a cikkben:
- Mi okozza a Fatal Error: Maximális végrehajtási idő túllépése a WordPressben
- A gyors javítás (ne lássa tovább a hibát, és a webhelye újra online legyen)
- A jobb javítás (keresse meg a mögöttes problémát, és javítsa ki, hogy a webhelye újra online legyen)
- A bővítmények letiltása
- A jelenleg aktív téma letiltása
Mi okozza a Fatal Error: A webszerverek időkorlátot szabnak arra, hogy mennyi ideig futhat egy szkript. Ez azért történik, hogy megakadályozza a webszerverrel való visszaélést. Mivel a WordPress PHP-szkriptekből áll, minden szkriptnek teljesen le kell futnia a beállított időkorláton belül.
Ez az időkorlát általában 30 másodperc, és a legtöbb esetben ez több mint elég idő egy szkript futtatására. Ha azonban egy PHP-szkript a beállított időkorlátnál hosszabb ideig fut, a PHP megszakítja a végrehajtást. Ekkor a fatal error: Maximum execution time exceeded üzenetet küldi vissza.
A gyors javítás (ne lássa többé a hibát, és webhelye újra online legyen)
Mivel ez a hiba azt jelzi, hogy a beállított időkorlát nem elegendő az egyik szkript futásához, az időkorlát növelésével gyorsan orvosolhatja a problémát.
A korlát növelésének legegyszerűbb módja a WP Maximum Execution Time Exceeded plugin telepítése. Csak telepítened kell a plugint, és máris megnöveli az időkorlátot. Ha a jövőben vissza szeretné állítani az időkorlátot az alapértelmezett értékekre, egyszerűen csak távolítsa el a plugint.
Ez a plugin úgy növeli a végrehajtási időkorlátot, hogy a .htacess fájljához hozzáad egy konfigurációt.
Ha tehát nem szeretne egy ilyen egyszerű dologhoz egy bővítményt hozzáadni, akkor egyszerűen növelheti a WordPress max_execution_time értékét közvetlenül a .htaccess fájlban (ezt a lehetőséget javasoljuk).
Ezért lépjen be a szerverére FTP segítségével, és nyissa meg a WordPress fájlokat tartalmazó mappát.
Ebben a mappában keresse meg a .htaccess fájlt. Ha megtalálta, kattintson rá a jobb gombbal, és kattintson a View/Edit (Megtekintés/Módosítás) gombra.
Következő lépésként add hozzá ezt a sort a fájl aljához (ez 30 másodpercről 2 percre növeli az időkorlátot):
php_value max_execution_time 120
Most mentsd el ezt a fájlt és zárd be. A FileZilla fel fogja kérni, hogy töltse fel az új fájlt. Kattintson az Igen gombra.
Így növelheti manuálisan a végrehajtási időkorlátot. a wp-config.php fájl szerkesztésével is növelheti a max_execution_time-ot a WordPressben.
A jobb megoldás (keresse meg a mögöttes problémát, és javítsa ki, hogy az oldal újra online legyen)
A fenti megoldás kijavítja a Maximum Execution Time Exceeded problémát, de ez lényegében egy javítás. Megnöveli a memóriakorlátot, hogy befogadja a túl sokáig futó szkriptet.
A jobb megoldás az, hogy megtalálja a túl sokáig futó szkriptet, és megszabaduljon tőle.
Nagyon valószínűtlen, hogy a WordPress egyik központi szkriptje a hibás. Ezek a szkriptek szigorú szabványok szerint vannak kódolva.
Ezért a témák és bővítmények felé kell néznie, hogy megtalálja az időigényes szkriptet.
Ha a fenti lépésben már megnövelte az időkorlátot, akkor először vissza kell állítani az alapértelmezett értékre (vagy a bővítmény eltávolításával, vagy a .htaccess-be beírt sor törlésével). Ez azt fogja okozni, hogy a probléma újra megjelenik, de pont ezt akarjuk.
A bővítmények kikapcsolása
A probléma felkutatásához kezdjük a bővítményeknél. Ha a probléma megszűnik, ha letiltod a bővítményeidet, akkor az egyik bővítményedben lévő hibás szkript a hibás. Olvassa el ezt a cikket, hogy megtudja, hogyan tiltsa le a bővítményeket, és hogyan találja meg a problémát okozó konkrét bővítményt:
Ha sikerül megtalálni az időrabló szkriptet tartalmazó plugint, egyszerűen törölje azt. Ha szükséged van a plugin által kínált funkciókra, bármikor beszerezhetsz egy másikat, amely hasonló funkciókkal rendelkezik.
Disabling Your Currently Active Theme
Ha a pluginok letiltása nem oldotta meg a problémát, akkor valószínűleg az aktív témád a hibás. Kövesse ezt az útmutatót:
Ha a téma letiltása megszünteti a hibát, akkor a hibás szkript a témában van. Törölnie kell a témát, és újra kell telepítenie egy friss példányt, vagy teljesen más témát kell használnia.
Fatal Error: Maximum Execution Time Exceeded – Conclusion
A bővítmények és (vagy) az aktív téma kikapcsolása segíthet megtalálni a túl sokáig tartó szkriptet. Ennek a szkriptnek az eltávolítása az igazi megoldás erre a végzetes hibára.
A WordPress max_execution_time azért van, hogy megakadályozza a szerverrel való visszaélést, így ennek növelése egy működőképes megoldás, de nem igazán megoldás. Ez csak egy út a probléma megkerülésére.
Ha a hiba a témák és bővítmények letiltása után is fennáll, akkor a gyorsjavítással (az időkorlát növelésével) egyelőre újra működésbe hozhatod a webhelyedet, amíg megpróbálod megtalálni és törölni a lassan betöltődő szkriptet.
Egy dolog, amit figyelembe kell venned, ha nemrég fejlesztéseket végeztél a WP webhelyeden. Ha igen, akkor a webhelyéhez hozzáadott egyik szkript okozhatja a problémát.
Amellett, bár nagyon valószínűtlen, hogy egy alapvető WordPress fájl a felelős, érdemes megfontolni a WordPress frissítését, hátha ez eltávolítja a lassan betöltődő szkriptet.