Básicamente, una de las preguntas más importantes de todos los tiempos: ¿Cuáles son algunas de las formas en que usa settings.php en su flujo de trabajo de desarrollo / preparación?
En este momento, tengo mi archivo settings.php configurado de la siguiente manera, y baso mi desarrollo en la directiva $ HOST del servidor, lo que significa que puedo trabajar en dev.example.com para el servidor de desarrollo (compartido), local.example. com para mi computadora local (y el pago de código local de otros desarrolladores) y www.example.com (o simplemente example.com) para el sitio en vivo.
(Este código se encuentra en la sección 'Configuración de la base de datos' de settings.php):
$host = $_SERVER['HTTP_HOST'];
$base_url = 'http://'.$host;
$cookie_domain = $host;
switch($host) {
case 'example.com': # Production server
$db_url = 'mysqli://prod_sql_user:password@127.0.0.1/prod_db';
$update_free_access = FALSE;
$conf = array (
// Set production config options here...
'example_setting' => 0,
);
break;
case 'dev.example.com': # Development server
$db_url = 'mysqli://dev_sql_user:password@127.0.0.1/dev_db';
$update_free_access = FALSE;
$conf = array (
// Set production config options here...
'example_setting' => 0,
);
break;
case 'local.example.com': # Local server
$db_url = 'mysqli://local_sql_user:password@127.0.0.1/local_db';
$update_free_access = FALSE;
$conf = array (
// Set production config options here...
'example_setting' => 0,
// Turn off most core caching.
'cache_inc' => 'includes/cache.inc',
'cache' => CACHE_DISABLED,
);
break;
}
?>
Esto funciona bastante bien para la mayoría de los propósitos, pero significa que tenemos un montón de código extraño en nuestro archivo settings.php compartido ... ¿hay una mejor manera?