首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >php白屏死亡

php白屏死亡
EN

Stack Overflow用户
提问于 2013-10-28 09:41:45
回答 2查看 1.6K关注 0票数 4

我还浏览了其他几个问题,并尝试了与错误报告相关的各种解决方案,包括

代码语言:javascript
复制
ini_set('display_errors',true);
error_reporting(E_ALL);

但我还是被死神的白屏卡住了。这似乎只有在我使用自己的面向对象类时才会在页面上发生。但是,OOP脚本执行成功,但我无法显示HTML。偶尔,我可以让它捕获异常,但它是间歇性的。

例如,我有一个this方法:

代码语言:javascript
复制
public function getSubdomain() {
        $this->data->query('SELECT * FROM users WHERE email=:email');
        $this->data->bind(':email', $this->email);
        $this->data->execute();
        if($this->data->rowCount() == 0)
            throw new Exception('There is no account associated with this e-mail address.');
        $curr = $this->data->single();

        return $curr['subdomain'];
    }

^^这将执行得很好,我可以使用die($curr['subdomain']);从OOP类打印它,但是如果我尝试使用PHP在页面上显示它,什么都没有。没有错误,所以日志,没有源代码,什么都没有。

我在Apache中使用MultiViews,我的DB查询是使用一个自定义的PDO类完成的。

我跑过了

代码语言:javascript
复制
# php -l new.php

直接在服务器上,它会报告

代码语言:javascript
复制
No syntax errors detected in new.php

当我在WAMP本地运行完全相同的设置时,它可以正常工作,但是一旦我迁移到我的CentOS/Apache/PHP机器上,所有的地狱都被打破了。MySQL在单独的服务器上,但没有问题。

我可以根据需要提供更具体的代码(包括我自己的和来自服务器的conf文件),我只是想避免由于问题的性质而带来的任何武断。有什么建议(例如,错误报告的不同方法,等等)?

EN

回答 2

Stack Overflow用户

发布于 2013-10-28 23:59:30

大多数时候,当我们从WAMP转移到LAMP时出现错误,这是大小写敏感的问题。因为windows不是CS,但是Linux是很多可以破解的。

我会:

在执行

  • check .htaccess rules (或临时删除它们)的类/页面上使用

  • check case检查是否存在错误
票数 0
EN

Stack Overflow用户

发布于 2013-11-03 03:49:47

我还遇到过几次PHP的白屏死机。根据我的经验,您可以做的最有帮助的事情之一是使用php.ini:http://us1.php.net/manual/en/errorfunc.configuration.php#ini.error-log中的error_log指令确保PHP记录到文件中。

如果在已经定义的PHP错误日志或Apache错误日志中仍然看不到任何有用的信息,则可能需要通过代码添加调试输出,以确定发生致命错误的位置。为此,您可以打开一个文件句柄并定期向其写入,或者只需使用error_log()函数输出调试消息。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19626013

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档