Váš web zobrazuje prázdnu stránku alebo vetu „Na vašej web stránke sa vyskytla kritická chyba.“ V oboch prípadoch PHP niekam zapísalo presné hlásenie, ktoré pomenúva súbor, v ktorom chyba vznikla. Tento sprievodca ukazuje, kde ho prečítať, ako ho vyložiť a aký krok zodpovedá ktorému hláseniu.
wp-config.php a znova načítajte stránku s chybou.PHP Fatal error v wp-content/debug.log: cesta k súboru pomenúva plugin alebo tému, v ktorej chyba vznikla.debug.log.Biela stránka je najčastejšie fatálna chyba PHP: niektorý súbor webu požiadal o niečo nemožné a vykonávanie sa zastavilo skôr, než sa čokoľvek zobrazilo. Od verzie 5.2 WordPress tieto chyby zachytáva: namiesto prázdnej stránky zobrazí „Na vašej web stránke sa vyskytla kritická chyba.“ a pošle e-mail na administrátorskú adresu webu.
Stránka zostane úplne biela v niekoľkých prípadoch: staršia verzia WordPressu, chyba, ktorá nastala pred načítaním tohto mechanizmu, konštanta WP_DISABLE_FATAL_ERROR_HANDLER nastavená na true alebo plugin pre cache, ktorý servíruje prázdnu stránku uloženú počas poruchy. Postup, ktorý nasleduje, platí pre všetky tieto prípady.
Tri kroky môžu počkať, kým si chybu prečítate: preinštalovanie WordPressu, mazanie pluginov, obnovenie starej zálohy. Každý z nich môže vymazať nedávne nastavenia alebo údaje, zatiaľ čo hlásenie o chybe zvyčajne povie, ktorú súčasť deaktivovať, a všetko ostatné zostane zachované.
Keď WordPress chybu zachytí, pošle na administrátorskú e-mailovú adresu webu správu s predmetom „[Názov webu] Vaša stránka má v tejto chvíli technické problémy“. Pomenúva plugin alebo tému, v ktorej chyba vznikla, a obsahuje odkaz, ktorý otvorí administráciu v móde obnovy.
Pripojte sa k webu cez SFTP alebo cez správcu súborov svojho poskytovateľa hostingu, otvorte wp-config.php v koreňovom adresári a riadok define( 'WP_DEBUG', false ); nahraďte týmito štyrmi riadkami:
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
@ini_set( 'display_errors', 0 );
Patria nad komentár, ktorý uzatvára upraviteľnú časť súboru (/* That's all, stop editing! Happy publishing. */, ktorý WordPress v slovenčine ponecháva v angličtine). Znova načítajte stránku s chybou a otvorte wp-content/debug.log. WP_DEBUG_DISPLAY nastavené na false drží hlásenia v súbore, mimo stránky, ktorú vidia vaši návštevníci.
Ak debug.log zostane prázdny alebo sa neobjaví, chybu zapísalo priamo PHP: hľadajte súbor error_log v koreňovom adresári webu alebo v wp-admin, alebo časť s chybovými logmi v paneli poskytovateľa hostingu.
Fatálna chyba sa zmestí do jedného riadku: typ chyby, jej opis, potom in a za ním úplná cesta k súboru a číslo riadku. Cesta je najužitočnejší údaj: wp-content/plugins/nazov/ označuje plugin, wp-content/themes/nazov/ tému.
| Hlásenie obsahuje | Čo to znamená | Krok |
|---|---|---|
Call to undefined function alebo Class "…" not found, v wp-content/plugins/nazov-pluginu/ | Plugin volá kód, ktorý chýba: neúplná aktualizácia, deaktivovaný plugin, od ktorého závisí, alebo verzia PHP, ktorú nepodporuje. | Deaktivovať tento plugin a potom ho preinštalovať alebo aktualizovať. |
Allowed memory size of 268435456 bytes exhausted | Skript prekročil pamäť pridelenú PHP, tu 268 435 456 bajtov, teda 256 MB. | Zvýšiť WP_MEMORY_LIMIT vo wp-config.php, v rámci limitu, ktorý stanovuje poskytovateľ hostingu, a potom hľadať, čo toľko spotrebúva. |
PHP Parse error: syntax error, unexpected, v functions.php on line 42 | Syntaktická chyba v súbore, veľmi často po ručnej úprave v editore tém. | Opraviť uvedený riadok alebo vrátiť predchádzajúcu verziu súboru. |
Uncaught TypeError alebo Uncaught ArgumentCountError, po zmene verzie PHP | Súčasť napísaná pre staršiu verziu PHP, ktorú aktuálna verzia odmieta vykonať. | Aktualizovať súčasť. Ako dočasné riešenie sa vrátiť k predchádzajúcej verzii PHP v paneli poskytovateľa hostingu, kým súčasť nenahradíte. |
Maximum execution time of 30 seconds exceeded | Spracovanie prekročilo čas povolený v PHP (max_execution_time). | Zistiť, o aké spracovanie ide (import, záloha, generovanie obrázkov), a ak je legitímne, zvýšiť limit u poskytovateľa hostingu. |
define( 'WP_MEMORY_LIMIT', '256M' );
Premenujte priečinok pluginu, ktorý hlásenie uvádza, napríklad wp-content/plugins/nazov-pluginu na nazov-pluginu.off. WordPress plugin nenájde a prestane ho načítavať; jeho nastavenia zostávajú uložené v databáze a WordPress ho deaktivuje pri najbližšom otvorení obrazovky pluginov.
Pri téme premenovanie jej priečinka v wp-content/themes znova sprístupní administráciu, ale návštevníci vidia prázdnu stránku, kým nie je aktívna nijaká téma. Hneď otvorte Vzhľad > Témy: WordPress zistí, že aktívna téma je poškodená, a vráti sa k nainštalovanej predvolenej téme.
wp plugin list --status=active
wp plugin deactivate nazov-pluginu
wp theme list
wp theme activate twentytwentyfive
Prvý príkaz zachová zoznam aktívnych pluginov, užitočný pred hromadnou deaktiváciou. Ak sa na chybe zastaví samotné WP-CLI, pridajte k príkazu --skip-plugins --skip-themes: spustí sa potom bez načítania pluginov a témy. Pluginy z priečinka wp-content/mu-plugins sa načítajú aj tak; ak chyba pochádza z niektorého z nich, premenujte jeho súbor.
Keď hlásenie neoznačuje konkrétnu súčasť, wp plugin deactivate --all deaktivuje všetky pluginy. Ak sa web vráti, aktivujte ich znova jeden po druhom a po každom web znova načítajte: plugin aktivovaný naposledy pred návratom chyby je ten pravý.
define( 'WP_DEBUG', false ); a odstráňte WP_DEBUG_LOG z wp-config.php.wp-content/debug.log: v priečinku dostupnom z webu si ho môže prečítať ktokoľvek a obsahuje cesty na serveri.So Serenity by Simafri vytvoríme vašu profesionálnu webovú stránku, hostujeme ju, zabezpečíme ju a udržiavame aktuálnu. Vy nám napíšete, my sa postaráme o všetko. Doménové meno a firemný e-mail v cene.
Pretože nastala fatálna chyba PHP, najčastejšie v plugine alebo v téme. WordPress ju zachytí, zobrazí toto hlásenie a pošle na administrátorskú adresu webu e-mail s odkazom do módu obnovy. Ladiaci log uvádza podrobnosti chyby a súbor, v ktorom vznikla.
Skontrolujte priečinok spamu a e-mailovú adresu uvedenú v Nastavenia > Všeobecné. Bez e-mailu zapnite ladiaci log vo wp-config.php, prečítajte si chybu vo wp-content/debug.log a potom deaktivujte chybnú súčasť premenovaním jej priečinka cez SFTP.
Áno. Nastavenia pluginov sú uložené v databáze, nie v ich priečinku. Premenovaný plugin sa zobrazí ako deaktivovaný; vráťte mu pôvodný názov a znova ho aktivujte na obrazovke pluginov, a nájdete ho aj s jeho nastaveniami.
Chybná súčasť sa načítava iba v administrácii, alebo je tam potrebná vyššia pamäť. WordPress uplatňuje WP_MAX_MEMORY_LIMIT na obrazovky administrácie a WP_MEMORY_LIMIT na verejný web. Ladiaci log dáva v oboch prípadoch rovnakú informáciu: načítajte stránku administrácie s chybou a potom si prečítajte debug.log.
Simafri
Porozprávajme sa o vašom zámere
Povedzte nám v pár slovách, čo potrebujete: rýchlo sa vám ozveme.
Ďakujeme! Vaša žiadosť bola odoslaná. Čoskoro sa vám ozveme.
Máte radšej e-mail? Napíšte nám na support@simafri.com.