Primera:
Como te han dicho arriba, para apagar el debugger debes cambiar una constante, evidentemente es algo que debes hacer sí o sí para poner tu sitio online.
En la plantilla básica, debes ir a /web/index,php
// comment out the following two lines when deployed to production
defined('YII_DEBUG') or define('YII_DEBUG', true);
defined('YII_ENV') or define('YII_ENV', 'dev');
Yii2 está definiendo dos constantes, si no existen ya.
La primera es YII_DEBUG y se refiere a la barra de debug y la cantidad de información que mostrará de cada error y el detalle de los logs.
Obviamente esos logs y la barra sólo son para los ojos del desarrollador, asi que comentamos la segunda línea para ponerlo online.
La segunda es YII_ENV y se refiere al entorno de desarrollo de la aplicación. Si YII_ENV no está definida ya, le asigna el valor ‘dev’.
En un mundo ideal, las empresas de desarrollo deberían tener varios servidores y las aplicaciones ir cumpliendo ciclos dependiendo de lo que los PM digan.
Si trabajamos con varios entornos (como “testing”, “staging”, “bugs…)” Yii2 da mucha flexibilidad para controlar lo que mostramos.
Para pasar a producción, solo hay que comentar esas líneas.
// comment out the following two lines when deployed to production
// defined('YII_DEBUG') or define('YII_DEBUG', true);
// defined('YII_ENV') or define('YII_ENV', 'dev');
De esta forma YII_DEBUG no será TRUE y YII_ENV no será ‘dev’ y la aplicación no mostrará detalles de los errores del servidor, entre otras cosas.
Por si acaso, échale un ojo a /config/web.php y en algún lado tendrás esto:
if (YII_ENV_DEV) {
// configuration adjustments for 'dev' environment
$config['bootstrap'][] = 'debug';
$config['modules']['debug'] = [
'class' => 'yii\debug\Module',
// uncomment the following to add your IP if you are not connecting from localhost.
//'allowedIPs' => ['127.0.0.1', '::1'],
];
$config['bootstrap'][] = 'gii';
$config['modules']['gii'] = [
'class' => 'yii\gii\Module',
// uncomment the following to add your IP if you are not connecting from localhost.
//'allowedIPs' => ['127.0.0.1', '::1'],
];
}
Como verás, los módulos de Gii y debug sólo se inyectan cuando YII_ENV es ‘dev’. Si pese a comentar las líneas la barra de debug sigue apareciendo, fíjate que en /config/web.php tengas el debug y gii metidos en un if que evalúe YII_ENV
if (YII_ENV_DEV) {
// configuration adjustments for 'dev' environment
$config['bootstrap'][] = 'debug';
(...)