Skip to content
Errors at crashes

Ang WordPress White Screen of Death, Ipinaliwanag

Ang white screen of death ay isang PHP fatal error na hindi mo nakikita. May naabot ang WordPress na unrecoverable na error habang nagre-render, tumigil ang PHP, at dahil naka-off ang error display

Nailathala

Ang white screen of death ay isang PHP fatal error na hindi mo nakikita. May naabot ang WordPress na hindi na maibalik na error habang nagre-render, tumigil ang PHP, at dahil naka-off ang error display sa mga production server, blangko ang bumalik na pahina sa halip na ilimbag ang dahilan. Halos hindi na kailangang manghula sa ayusin: buksan ang debug log, buksan ang wp-content/debug.log, at basahin ang huling fatal na linya. Pinapangalanan nito ang eksaktong file — halos palaging isang plugin o theme — at ang isang linyang iyon ang buong pag-aayos.

Bakit blangko ang screen

May setting ang PHP na tinatawag na display_errors. Sa isang development machine ito ay kadalasang naka-on, kaya nililimbag ng isang fatal error ang stack trace sa screen. Sa isang tunay na host ito ay naka-off bilang default, dahil ang pagbunyag ng mga file path at error sa mga bisita ay isang problema sa seguridad. Kaya kapag may nag-throw ng fatal error — isang tawag sa isang function na wala na, isang class na hindi na-load, isang syntax error sa isang plugin update — namamatay ang PHP at walang ipinapadala. Nagre-render ang iyong browser ng isang walang lamang dokumento. Iyon ang “white screen.”

Simula sa WordPress 5.2 mayroon nang fatal error handler (WP_Fatal_Error_Handler) na sinusubukang saluhin ang mga ito. Kapag gumana ito, hindi ka makakakuha ng blangkong pahina — makakakuha ka ng “There has been a critical error on this website,” kasama ang isang email sa admin address na kadalasang naglalaman ng aktwal na error at isang link sa Recovery Mode. Ang isang tunay na blangkong screen ay kadalasang nangangahulugang pumutok ang error bago pa makapagpatakbo ang handler na iyon: isang parse/syntax error (nasasalo sa compile time), isang sirang must-use plugin, o isang fatal sa functions.php ng aktibong theme. Sa alinmang paraan, nakasulat sa isang lugar ang dahilan. Kailangan mo lang i-on ang pagsusulat.

Ayusin ito, ayon sa pagkakasunod-sunod

1. I-on ang log. I-edit ang wp-config.php sa pamamagitan ng SFTP at idagdag ito sa itaas ng linyang /* That's all, stop editing! */:

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
@ini_set( 'display_errors', 0 );

Ang WP_DEBUG_DISPLAY na false ay pinapanatiling malayo ang mga error sa pampublikong pahina habang isinusulat naman ng WP_DEBUG_LOG ang mga ito sa wp-content/debug.log. I-reload ang sirang pahina nang isang beses para makabuo ng sariwang entry.

2. Basahin ang huling fatal. Buksan ang wp-content/debug.log at tingnan ang ilalim:

tail -n 30 wp-content/debug.log

Naghahanap ka ng linyang ganito:

[14-Jul-2026 09:12:44 UTC] PHP Fatal error:  Uncaught Error: Call to undefined function wc_get_product() in /var/www/html/wp-content/plugins/some-addon/includes/class-widget.php:88

Pinapangalanan ng path ang salarin: plugins/some-addon. Iyon ang sagot mo. Kung mahaba ang trace o mahirap unawain ang mensahe (Allowed memory size exhausted, Cannot redeclare, isang class name na hindi mo kilala), i-paste ito sa aming error log decoder — inaalis nito ang ingay, sinasabi kung aling plugin o theme ang tinuturo ng path, at ipinapaliwanag kung ano ang ibig sabihin ng partikular na uri ng error.

3. I-deactivate ang pinangalanang component. Hindi mo maabot ang /wp-admin, kaya gawin ito sa pamamagitan ng SFTP. Palitan ang pangalan ng folder ng nagkakaproblemang plugin, hal. some-addonsome-addon.off. Hindi mai-load ng WordPress ang isang folder na hindi nito mahanap, kaya dine-deactivate nito ang plugin at bumabalik ang site. Kung ang log ay tumuturo sa iyong theme, lumipat sa isang default na theme sa pamamagitan ng pagpapalit ng pangalan ng aktibong theme folder — babalik ang WordPress sa isang naka-bundle na twentytwentysomething.

4. Kung hindi magsusulat ang log, ibig sabihin ay hindi writable ang wp-content, o nasa antas ng server ang error. Tingnan na lang ang PHP error log ng host:

find . -name "error_log" -newermt "-1 hour"

Parehong impormasyon, ibang file. Ang mga cPanel/Apache stack ay kadalasang naglalagay ng error_log sa root ng site o sa nagkakaproblemang directory.

Ano ang hindi dapat gawin

Huwag basta itaas ang memory limit. Ang pinaka-inuulit na payo online ay ang pagtaas ng WP_MEMORY_LIMIT sa 256M o 512M. Nagagamot lang niyan ang WSOD kung ang log ay talagang nagsasabing Allowed memory size of N bytes exhausted. Kung ang error ay Call to undefined function, walang ginagawa ang mas maraming memory — pinalitan mo ang isang setting nang basta-basta at puti pa rin ang screen. Basahin muna ang log, saka lang itaas ang memory kung memory ang nakasaad na problema.

Huwag i-clear ang iyong cache at ituring iyong diagnosis. Ang white screen ay ang pagkamatay ng PHP sa server bago pa umiral ang anumang HTML. Hindi maaaring maging sanhi ng blangkong dokumento ang isang lumang naka-cache na asset. (Ang isang sirang caching plugin ay puwede — ngunit pangangalanan ito ng log, na siyang punto.)

Huwag i-edit o i-reinstall ang core WordPress. Halos hindi kailanman nasa wp-includes o wp-admin ang fatal; nasa plugin o theme itong tinuturo ng log. Ang pag-reinstall ng core ay mabagal, mapanganib, at ginagamot ang isang sintomas na hindi mo pa nakumpirma.

Huwag i-disable ang lahat ng plugin at i-enable ulit ang mga ito nang isa-isa nang walang gabay. Gumagana ang pag-bisect, ngunit ito ang mabagal na daan. Sinasabi ng log ang eksaktong folder sa isang hakbang. Gamitin lang ang paraang “patayin lahat” kapag walang kahit anong mababasang error.

Huwag iwang naka-on ang display_errors sa production. Kapag bumalik na ang site, alisin ang mga debug define (o ibalik ang WP_DEBUG sa false). Ang mga error na nililimbag sa mga bisita ay ibinubunyag ang iyong mga path.

Nasa dead-end pa rin?

Kung pinangalanan ng log ang isang plugin ngunit hindi naaayos ng pag-disable nito ang screen, may pangalawang fatal sa ilalim ng una — i-on ulit ang log at basahin ang bagong huling linya; nagsasalansan ang mga fatal. Kung ang mismong mensahe ang pader, ilagay ito sa error log decoder at hayaan itong isalin para sa iyo ang uri ng error at ang file path. Nananatiling misteryo lang ang white screen habang naka-off ang log.