Если у вас есть это в вашем php.ini:
display_error = On;
и у вас это есть одновременно в приложении CI
error_reporting(0);
вы получите HTTP / 1.1 200 OK и полностью банковскую страницу.
Это потому, что когда display_error включен, php-fpm всегда возвращает HTTP-код 200.
И все ошибки для вывода запрещены error_reporting (0).
Для приложения CI запись index.php устанавливает рабочую среду следующим образом:
if(isset($_SERVER['SERVER_ENV'])) {
define('ENVIRONMENT', $_SERVER['SERVER_ENV']);
} else {
define('ENVIRONMENT', 'development');
}
if (defined('ENVIRONMENT'))
{
switch (ENVIRONMENT)
{
case 'development':
error_reporting(E_ALL);
ini_set('display_errors', 1);
break;
case 'testing':
case 'production':
error_reporting(0);
break;
default:
exit('The application environment is not set correctly.');
}
}
Короче говоря, когда вы устанавливаете директиву ENV в conf вашего веб-сервера, произнесите fastcgi_params Nginx:
fastcgi_param SERVER_ENV production;
тогда CI автоматически установит
error_reporting(0);