CodeIgniter项目加载空白网页


CodeIgniter project loads blank webpage

我有一个编码器项目,我已经在Mac OS X Lion上成功运行。当试图在ubuntu中运行相同的项目时,请求localhost/project会导致一个没有源代码的空白页面。

我在apache.conf中添加了AllowOverride All,但无济于事。我的最新策略是将die()语句放在索引和包含的文件中的重要位置,试图找到代码失败的行。通过这种方法,我发现在system/core/CodeIgniter.php中执行了行"$CI = new $class();"之前的die语句,而行之后的die语句(以及可能所有随后的代码)没有执行。

我可以用这些信息做什么来帮助我在本地运行这个项目?

谢谢!

当我开始使用CI时,我也有同样的空白页。

对我来说,只是我忘记在我的机器上安装mySQL。你不会得到错误,因为在系统文件中,数据库连接之前有一个"@",所以不会显示错误。

如果这不是问题,检查您的PHP版本,或者尝试在index.php文件中添加phpinfo()

您是否碰巧在某些文件的PHP结束标记后放置了空白或新行?如果是,请删除它们以及关闭PHP标记。

(注:

在代码点火器中,你不应该关闭只包含PHP代码的文件中的PHP标签(控制器,模型,…)

我最终遇到了一个类似的问题,只是相反-在Ubuntu上工作,但在OS x上什么也没有。我安装了mysql,其他网站在同一台服务器上运行得很好。对我来说,有两个罪魁祸首,也许这对你也有帮助:

  1. 您的日志目录不可写。通常目录是application/logs,除非您有一些自定义配置设置。(http://codeigniter.com/user_guide/general/errors.html)这不仅会影响所有的log_message(…)函数调用,当Loader类试图加载Log库时,它也会失败。如果是这种情况,更改配置中的日志级别(通常建议)不会产生任何有用的结果,因为CI 实际上不能写入任何错误。

  2. 你可能错过了一些其他php库安装在服务器上,它的工作。对我来说,这是一个缺失的memcached php扩展,所以Loader类在试图初始化Session类(它的一个自定义扩展版本)时也失败了。如果您不确定需要哪些扩展(比如加入一个现有的项目,在基本的CI安装之上添加许多额外的扩展),那么这个扩展可能更难调试。因此,下一步将是尝试将这些die(…)语句放入Loader类中,以查看实际加载失败的内容。