Jak opravit fatální chybu: Překročení maximální doby provádění ve WordPressu

Jak opravit fatální chybu: Překročení maximální doby provádění ve WordPressu

Pokud se vám při přístupu k webu WordPress zobrazuje „fatální chyba: překročena maximální doba provádění“, znamená to, že část kódu WordPressu se provádí příliš dlouho. Pro skripty PHP existuje maximální doba provádění. Pokud skript trvá déle, dojde k této fatální chybě. Chcete-li ji opravit, musíte zvýšit max_execution_time WordPressu.

Slova „Fatal Error“ mohou být alarmující, ale naštěstí můžete tento problém s trochou snahy vyřešit.

Tento průvodce vám ukáže rychlou opravu problému fatal error: maximum execution time exceeded, abyste mohli svůj web znovu zprovoznit. Ukážeme vám také důkladnější opravu, která vám pomůže lokalizovat a vyřešit základní problém.

V tomto článku:

  1. Co způsobuje fatální chybu:
  2. Rychlá oprava (Přestaňte vidět chybu a zprovozněte web)
  3. Lepší oprava (Najděte základní problém a opravte ho, abyste zprovoznili web)
    • Zakázání zásuvných modulů
    • Zakázání aktuálně aktivního tématu

Co způsobuje fatální chybu: Překročena maximální doba provádění ve WordPressu

Webové servery nastavují časový limit, jak dlouho může skript běžet. Děje se tak proto, aby se zabránilo zneužití webového serveru. Vzhledem k tomu, že WordPress se skládá ze skriptů PHP, musí každý skript proběhnout kompletně v rámci nastaveného časového limitu.

Tento časový limit je obvykle 30 sekund a ve většině případů je to více než dostatečná doba pro spuštění skriptu. Pokud však skript PHP běží déle, než je nastavený časový limit, PHP jeho provádění zkrátí. Poté vrátí zprávu o fatální chybě: překročen maximální čas spuštění.

Rychlá oprava (přestanete vidět chybu a web bude opět online)

Protože tato chyba indikuje, že nastavený časový limit není dostatečný pro spuštění některého z vašich skriptů, můžete ji rychle opravit zvýšením časového limitu.

Nejjednodušší způsob, jak limit zvýšit, je nainstalovat plugin WP Maximum Execution Time Exceeded. Stačí plugin nainstalovat a časový limit se zvýší. Pokud budete chtít v budoucnu vrátit časový limit na výchozí hodnoty, jednoduše plugin odinstalujte.

Tento plugin zvýší váš časový limit spuštění přidáním konfigurace do souboru .htacess.

Pokud tedy kvůli něčemu tak jednoduchému nechcete přidávat zásuvný modul, můžete jednoduše zvýšit max_execution_time WordPressu přímo v souboru .htaccess (tuto možnost doporučujeme).

Pro tento postup přistupte ke svému serveru pomocí FTP a otevřete složku obsahující soubory WordPressu.

V této složce vyhledejte soubor .htaccess. Po jeho nalezení na něj klikněte pravým tlačítkem myši a vyberte možnost Zobrazit/Upravit.

Upravit htacces - opravit fatální chybu: maximální doba provádění překročena ve wordpressu

Dále přidejte na konec souboru tento řádek (tím se zvýší časový limit z 30 sekund na 2 minuty):

php_value max_execution_time 120

Přidejte kód do htaccess- opravte fatální chybu: překročen maximální čas provádění ve wordpressu

Nyní tento soubor uložte a zavřete. FileZilla vás vyzve k nahrání nového souboru. Klikněte na tlačítko Ano.

A to je způsob, jak ručně zvýšit limit doby provádění. max_execution_time můžete také zvýšit ve WordPressu úpravou souboru wp-config.php.

Lepší oprava (najděte základní problém a opravte jej, aby byl váš web opět online)

Výše uvedené řešení řeší problém s překročením maximální doby provádění, ale je to v podstatě oprava. Zvyšujete paměťový limit, abyste se přizpůsobili skriptu, který se spouští příliš dlouho.

Lepším řešením je najít skript, který se spouští příliš dlouho, a zbavit se ho.

Je velmi nepravděpodobné, že by na vině byl některý ze základních skriptů WordPressu. Tyto skripty jsou kódovány podle přísných norem.

Takže byste se měli podívat směrem k vašim tématům a zásuvným modulům a najít časově náročný skript.

Pokud jste již ve výše uvedeném kroku zvýšili časový limit, chcete jej nejprve vrátit na výchozí hodnotu (buď odinstalováním zásuvného modulu, nebo odstraněním řádku, který jste přidali do .htaccess). To způsobí, že se problém znovu objeví, ale to je to, co chceme.

Zakázání zásuvných modulů

Chcete-li vysledovat problém, začněme u zásuvných modulů. Pokud problém zmizí, když vypnete zásuvné moduly, pak je na vině vadný skript v některém z vašich zásuvných modulů. Přečtěte si tento článek, kde se dozvíte, jak zakázat zásuvné moduly a jak najít konkrétní zásuvný modul, který způsobuje váš problém:

Pokud se vám podaří najít zásuvný modul obsahující časově náročný skript, jednoduše jej odstraňte. Pokud potřebujete funkce, které zásuvný modul nabízí, můžete si vždy pořídit jiný s podobnými funkcemi.

Zakázání aktuálně aktivního motivu

Pokud zakázání zásuvných modulů problém nevyřešilo, pak je pravděpodobně na vině váš aktivní motiv. Postupujte podle tohoto návodu:

Pokud zakázání vašeho motivu chybu odstraní, pak je chybný skript ve vašem motivu. Budete muset téma odstranit a znovu nainstalovat novou kopii nebo použít úplně jiné téma.

Fatální chyba: Vypnutí zásuvných modulů a (nebo) aktivního tématu by vám pomohlo najít skript, jehož spuštění trvá příliš dlouho. Odstranění tohoto skriptu je skutečným řešením této fatální chyby.

Skript max_execution_time je v aplikaci WordPress zaveden proto, aby se zabránilo zneužití serveru, takže jeho zvýšení je funkční oprava, ale ne skutečné řešení. Je to pouze způsob, jak problém obejít.

Pokud chyba přetrvává i po vypnutí témat a zásuvných modulů, můžete použít rychlou opravu (zvýšení časového limitu), abyste web prozatím zprovoznili, zatímco se pokusíte najít a odstranit pomalu se načítající skript.

Jednu věc je třeba zvážit, pokud jste na webu WP nedávno prováděli nějaké vývojové práce. Pokud ano, mohl by problém způsobovat některý ze skriptů přidaných na váš web.

Ačkoli je velmi nepravděpodobné, že by za to byl zodpovědný základní soubor WordPressu, můžete zvážit aktualizaci WordPressu, abyste zjistili, zda tím odstraníte skript zpomalující načítání.

Articles

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.