Работа в разных режимах разработки

Разработчики часто стремятся к различному поведению приложения в зависимости от того в каком режиме оно запущено, в режиме разработки или производственном. Например, подробный отчет об ошибках полезен в режиме разработки приложения, но также он может вызвать проблемы безопасности “live”.

Постоянная РЕЖИМА РАЗРАБОТКИ

По умолчанию CodeIgniter постовляется с постоянной режима разработки чтобы использовать значение предоставленные в $_SERVER['CI_ENV'], в противном случае по умолчанию ‘development’. В верхней части index.php, вы увидите:

define('ENVIRONMENT', isset($_SERVER['CI_ENV']) ? $_SERVER['CI_ENV'] : 'development');

Эта переменная сервера может быть задана в .htaccess файле или Apache конфигурациях SetEnv. Альтернативные методы доступны для nginx и других серверов или вы можете удалить эту логику совсем и установить постоянную на основе IP адреса сервера.

В дополнение к влияющим на некоторые основные поведения фреймворка (см. следующий раздел), вы можете использовать эту постоянную в своей разработке для различия в каком режиме вы работаете.

Эффекты поведения фреймворка по умолчанию

Существует несколько мест в системе CodeIgniter где постоянная РЕЖИМА используется. В этом разделе описывается как зависит поведение фреймворка по умолчанию.

Отчеты об ошибках

Назначение постоянной РЕЖИМА в значение ‘development’ будет отображать в браузере все ошибки PHP когда они имеются. И наоборот установив значение постоянной РЕЖИМА в ‘production’ можно отключить вывод об ошибках. Отключение отчетов об ошибках в производственном режиме хороша практика безопасности .

Файлы конфигураций

При желании вы можете загружать CodeIgniter со специфичискими файлами конфигураций режима. Это может быть полезно для таких вещей как управление API ключами в различных режимах. Это описано более подробно в разделе документации :doc:`Config Class </guide/libraries/config#environments>`_.