php - 没有PHP错误,codeigniter仍然显示空白页面
问题描述
我正在使用 Codeigniter。
我的项目在 Codeigniter 的开发环境中运行良好,但是当我切换到生产环境时,它显示空白页。
现在我尝试打印所有错误消息,但它确实显示了任何错误消息!即使我尝试查看错误日志,但也没有显示任何错误或警告。
我试图显示所有错误和警告,以便我可以解决它们。
ini_set('display_errors', 1);
在我的开发环境中没有错误,即使在我的 linux apache 控制台中也没有,但是当我切换到生产环境时,它只会显示空白页!
我该如何调试?
我的代码:
define('ENVIRONMENT', isset($_SERVER['CI_ENV']) ? $_SERVER['CI_ENV'] : 'production');
/*
*---------------------------------------------------------------
* ERROR REPORTING
*---------------------------------------------------------------
*
* Different environments will require different levels of error reporting.
* By default development will show errors but testing and live will hide them.
*/
switch (ENVIRONMENT)
{
case 'development':
error_reporting(-1);
ini_set('display_errors', 1);
break;
case 'testing':
case 'production':
ini_set('display_errors', 0);
if (version_compare(PHP_VERSION, '5.3', '>='))
{
error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED & ~E_STRICT & ~E_USER_NOTICE & ~E_USER_DEPRECATED);
}
else
{
error_reporting(E_ALL & ~E_NOTICE & ~E_STRICT & ~E_USER_NOTICE);
}
break;
default:
header('HTTP/1.1 503 Service Unavailable.', TRUE, 503);
echo 'The application environment is not set correctly.';
exit(1); // EXIT_ERROR
}
if (defined('ENVIRONMENT'))
{
switch (ENVIRONMENT)
{
case 'development':
error_reporting(E_ALL);
break;
case 'testing':
case 'production':
error_reporting(0);
break;
default:
exit('The application environment is not set correctly.');
}
}
解决方案
你需要验证一些东西:
- 服务器工作正常
- 您位于服务器中映射的完全相同的目录中
- 输入
I am here
root -> index.php of codeigniter 看看它是否打印而不是空白页 - 查看
.htaccess
推荐阅读
- fortran - 如何使用 Doxygen Fortran 主程序?
- javascript - React Native - 如果当前用户令牌无效,则直接用户重新登录?
- smartsheet-api - Smartsheet 函数是不可解析的
- python - 如何转换数据框以将列的值作为新列,按其他列分组?
- sql-server - 日志中的每分钟错误 - 错误:17053,严重性:16,状态:1
- stm32 - 使用 EEPROM 仿真可以阻止我的中断
- python - 如何在python中处理config.ini文件中的空值
- php - 得到错误 getaddrinfo failed: nodename nor servname provided, or not known
- powerbi - 隐藏 Power BI 表视觉对象中的字段
- metrics - 通过过滤广告系列标签来获得广告系列点击次数