As odd as it may sound, the latest version of WordPress contains a deadly bug – the while screen of death as some developers call it. Unfortunately a client of mine was a victim of this new killer bug which is currently not fixable.
Why wordpress is showing blank screen?
In general WordPress as all PHP software is supposed to show parse errors instead of empty screens when an error occurs, unfortunately this is not the case. In our problem, wordpress uses the so called Output Object/Buffer Handlers where it can manipulate what is printed on the screen like the code below:
// start output buffering
ob_start();
print("something");
print("more stuff");
// now clean the output buffer as nothing was ever printed on the screen
ob_end_clean();
Many programmers find this extremely useful when debugging large and complex software, but in some cases, this can be a rather complicated bug for the inexperienced developers. Note that I’m not saying that “we” are not experienced, but that if you are not familiar with the details of the inner-workings of this software you may not be able to troubleshoot such errors as the one we currently have.
Files affected by this bug
I’ve noticed that the wp-config.php has been changed as the last ?> php was missing on the bottom of the file. If this is the case then just add it and your wordpress will work fine. Others reported a blank link on top of the wp-config file. If you remove this blank line and start with What is the cause of WordPress white screen of death?
Currently I have absolutely no clue, but I’m pretty sure that it has to do something with wrong regular expression changes inside the system core or even maybe potential security exploit. Based on my research I found that:
Replacing the wordpress system files from a new copy DOES NOT WORK.
Restoring Database of a Previous DB Dump DOES NOT WORK.
After I restored the whole account with full account Backup fixed the issue, but did not leave any clues on what may have been the problem.
What systems are vulnerable to this bug
Currently I know (almost for certain) that APACHE running with SuExec is the only system having this problem. Seems that this type of bug is closely associated with file/folder permissions which implies that the error is caused by file modifications.
How to fix?
As it may sound strange, but in our case I’ve added a newly created text file with the name php.ini with only one line of code inside “display_errors = 1” (no quotes) and it worked. Check it out yourself.
Download PHP.INI here and then upload it to your wordpress root folder.
Remember to remove .txt from the end of the file after you upload!!!!
Post if this works for you.
Venetsian.
keeping an eye on this… its left me dead in the water.
Yes, same here with 2 other wordpress blogs. Seems the issue is not really popular and may be server configuration dependent.
I have been a victim and nothing I have tried seems to work. My blog is dead.
this just happened to my site today. Upgraded to 2.8.5 about a week ago.
all of my pages were showing up blank even the admin panel. Tried moving all plugin and themes. Made a php.ini file with display_errors = 1 and put it in the main directory. Site started working again immediately. Also had to add same file into admin panel directory. This page was lifesaver.
I dont know but wordpress 2.8 series seems to suck very very very bad! It is very full of bugs! WordPress 2.3 was so damn stable… I think I will return to 2.3…. I still have the archive.
how do i dl the php.ini file? when i click on your download link above it takes me to the page http://venetsian.com/downloads/php.ini.
is there a txt file?
Yes, that’s the file you have to put in your /public_html/ folder (wordpress root).
If you open that and view that as text, then just create new file called php.ini and put the text line there.
if you open that? what is that? the webpage your link goes to here http://venetsian.com/downloads/php.ini?
how do i open that webpage and view as text? do you mean view source?
kind thanks
Hi Sean,
Seems I forgot to add .txt at the end of the link. Sorry!!
I’ve updated the post. Try to download now!
Cheers,
Venetsian
Your .ini files seems to have solved my problem. Thanks a million!
i had this prob.
was missing the ?> at the end of the config file.. thanks dude. saved me.
I have also seen an empty last line in the wp-config do this…
It will also show a white screen if you don’t have a template selected. This is useful when you are building subdomains and don’t want anything to show up till you are ready to work on them 🙂