下面简单分析一下wordpress白屏原因及相对应的解决办法:
1.安装了新插件,插件与wordpress不兼容,导致出现白屏。此种情况比较好解决,先找出有问题的插件,(一个个地去试,因为大部分人在出现白屏时不会安装太多插件,应该比较好试出来),找出插件后,在wp-content/plugin目录把对应的插件文件夹的名字改一下或者删除都可以解决问题.
2.用记事本修改了wordpress里面的评论文件wp-config.php,导致白屏。为神马不能用记事本修改呢?其实这就是传说中的UTF-8编码BOM问题,今天就来为大家深入剖析一下WordPress的白屏问题。
Windows下对于UTF-8编码的文本文件在被用默认的记事本打开后,在保存的时候,Windows会自动在文件的头部添加三个隐藏的字符0xEF 0xBB 0xBF,也就是BOM(Byte Order Mark,即字节流标记),它的作用是让应用程序识别该文件的编码格式。
众所周知PHP最常用的架构为LAMP(Linux+Apache+MySQL+PHP),并不是为Windows平台设计的,最初语言设计时并为考虑到Windows下的BOM问题,所以PHP在执行的时候并不会忽略BOM,在读取、包含或者引用这些文件的时候,PHP会将BOM的三个隐藏字符当作文件正文开头的一部分。根据脚本语言的特点,这串字符将会被显示出来,由此造成即使页面的top padding设置为0,也无法让整个网页紧贴浏览器顶部,因为在HTML的开头有这3个字符。
但这并不是最让人头痛的问题,受到Cookie送出机制的限制,在这些开头已经有BOM的文件中,Cookie无法正确送出(因为在Cookie送出前PHP已经送出了文件头),所以WordPress登入和登出功能失效。并且一切依赖于Cookie、Session实现的功能全部无效,无法保存、更新任何设置。
所以在Windows上用PHP进行WordPress开发时,务必记住不要用记事本编辑文件,同时阿古巴巴发现用editplus也会出现类似的问题。在这里推荐用woredpress后台的编辑功能,或者用不会给文件乱加BOM的编辑工具,如Dreamware、Notepad++等。