Para crear dos entornos como son desarrollo y producción, necesitamos escribir unas lineas de código en nuestro index.php que está dentro de la carpeta public en Phalcon 3.X
Pero antes debemos añadir un parámetro adicional a nuestra configuración del host virtual. Una variable llamada por ejemplo APLICATION_ENV que en nuestro local llevará el valor de development y en producción el de production.
fastcgi_param APPLICATION_ENV development;
Esto mismo se puede aplicar a Apache con su sintanxis correcta.
Ya tenemos disponible la variable $_SERVER['APPLICATION_ENV'] después de reiniciar nuestro nginx.
El código que nos interesa del index.php para diferenciar esos entornos y poder setear opciones, constantes o el nivel de erorres de php...
define('ENVIRONMENT', isset($_SERVER['APPLICATION_ENV']) ? $_SERVER['APPLICATION_ENV'] : 'development');
switch (ENVIRONMENT) {
case 'development':
error_reporting(E_ALL);
ini_set('display_errors', 1);
ini_set('log_errors', '1');
$debug = new \Phalcon\Debug(); // modo debug de phalcon
$debug->listen();
break;
case 'production':
ini_set('display_errors', 0);
error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED & ~E_STRICT & ~E_USER_NOTICE & ~E_USER_DEPRECATED);
break;
default:
header('HTTP/1.1 503 Service Unavailable.', true, 503);
echo 'The application environment is not set correctly.';
exit(1); // EXIT_ERROR
}
Ya estaría funcionando nuestros dos entornos de desarrollo correctamente. Podemos crear los que queramos con lo explicado.