没有PHP错误,codeigniter仍然显示空白页

时间:2018-12-04 11:46:27

标签: php codeigniter error-handling

我正在使用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.');
    }
}

1 个答案:

答案 0 :(得分:0)

您需要验证一些内容:

  • 服务器运行正常
  • 您位于服务器中映射的完全相同的目录中
  • 在codeigniter的根目录-> index.php中键入I am here,并查看是否打印而不是空白页
  • 检查.htaccess