WordPress po aktualizaci zobrazuje bílou stránku
Bílá stránka po aktualizaci je skoro vždy doplněk nebo šablona. Jak web rychle vrátit do provozu a jak najít, co chybu způsobilo.
4 minuty čtení 5 kroků
Obsah návodu
Po kliknutí na „Aktualizovat vše“ web zobrazuje jen bílou plochu. Žádná chyba, žádný text, někdy i v administraci. Bílá stránka je ve skutečnosti chyba PHP, kterou web z bezpečnostních důvodů nezobrazuje. Ve většině případů ji způsobil doplněk nebo šablona, která nesedí s novou verzí, a web lze vrátit do provozu během několika minut.
Možné příčiny
- Doplněk nesedí s novou verzí WordPressu nebo PHP. Typicky starší doplněk, který autor už neudržuje, nebo doplněk dodávaný s šablonou zakoupenou před lety.
- Šablona používá funkci, která už neexistuje. Zvlášť u šablon z tržišť s vlastním „page builderem“.
- Vyčerpaná paměť PHP. Aktualizace se spustí, ale nová verze potřebuje víc paměti, než povoluje limit, a web spadne uprostřed práce.
- Nedokončená aktualizace. Přerušené spojení nechalo ve složce
websoubor.maintenance, nebo se nahrála jen část souborů.
Co udělat hned
- Nic dalšího neaktualizujte a nic neinstalujte. Každý další zásah přidá stopu, kterou pak musíte odlišit od původní chyby.
- Zkuste načíst administraci na adrese
https://vasedomena.cz/wp-admin/. Pokud funguje, je viníkem skoro jistě šablona nebo doplněk, který ovlivňuje jen veřejnou část webu. - Pokud potřebujete web rychle zprovoznit, požádejte podporu o obnovu ze zálohy z doby před aktualizací. Datahost zálohuje denně. Hledání příčiny může počkat.
- Pokud administrace nefunguje, připojte se přes FTP a ve složce
web/wp-contentpřejmenujte složkupluginsnapříklad naplugins-vypnuto. Tím vypnete všechny doplňky najednou. Když web naskočí, viník je mezi nimi. - Zkontrolujte, zda ve složce
webneleží soubor.maintenance. Pokud ano, smažte ho.
Jak najít viníka
Nejrychlejší cesta je error log, kde je chyba zapsaná včetně cesty k souboru. Případně zapněte zápis chyb přímo ve WordPressu: v souboru wp-config.php najděte řádek s WP_DEBUG a upravte ho takto:
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
Web dál zobrazí bílou stránku, ale do souboru wp-content/debug.log zapíše, co přesně selhalo. Obvykle tam bude něco jako Fatal error: Uncaught Error: Call to undefined function ... in /wp-content/plugins/nazev-doplnku/.... Cesta v hlášce prozradí, který doplněk nebo šablona chybu způsobil.
Pokud máte složku doplňků přejmenovanou, vraťte jí původní název a přejmenovávejte jednotlivé doplňky uvnitř, jeden po druhém. Po každém přejmenování stránku obnovte. Když web naskočí, poslední přejmenovaný doplněk je viník.
Po opravě vraťte WP_DEBUG a WP_DEBUG_LOG na false. Zapnutý zápis chyb v ostrém provozu web zpomaluje a soubor s logem je možné stáhnout z internetu.
Co s viníkem
- Doplněk má novou verzi: aktualizujte ho. Často to stačí.
- Doplněk nikdo neudržuje: najděte náhradu. Doplněk, který se dva roky neaktualizoval, je bezpečnostní riziko, i když právě funguje.
- Šablona: u placených šablon ověřte, že máte platnou licenci a přístup k aktualizacím. Bez nich se šablona neaktualizuje a časem selže.
- Paměť: přidejte do
wp-config.phpřádekdefine( 'WP_MEMORY_LIMIT', '256M' );. Když to nepomůže, zvyštememory_limitv souboru .user.ini v rámci limitů webhostingu.
Kdy kontaktovat podporu
Napište na podpora@datahost.cz, když web nejede ani po vypnutí doplňků a šablony a v logu je cesta do wp-includes nebo wp-admin (poškozené jádro WordPressu), když chcete web obnovit ze zálohy, nebo když se bílá stránka objevila bez aktualizace. Pak je podezření na napadení webu nebo na změnu verze PHP.
Do zprávy uveďte doménu, čas, kdy se bílá stránka objevila, co jste aktualizovali, zda funguje administrace, a poslední řádky z error logu nebo ze souboru debug.log. Pokud žádáte o obnovu, uveďte datum, ke kterému má být web vrácen.
Jak tomu příště předejít
Aktualizace samy o sobě problém nejsou. Problém je aktualizovat všechno naráz a bez zálohy. Dodržte tři zásady: před aktualizací si exportujte databázi a stáhněte soubory přes FTP, aktualizujte po jednom a po každé aktualizaci zkontrolujte úvodní stránku a kontaktní formulář.