Temel olarak, tüm zamanların en büyük sorularından biri: Geliştirme / aşamalandırma iş akışınızda settings.php kullanmanın bazı yolları nelerdir?
Şu anda, settings.php dosyamı aşağıdaki gibi ayarlıyorum ve geliştirmemi sunucumun $ HOST yönergesine dayandırıyorum; yani, local.example (geliştirme) paylaşılan sunucusu için dev.example.com üzerinde çalışabilirim. yerel bilgisayarım için com (ve diğer aygıtın yerel kodları) ve canlı site için www.example.com (veya yalnızca example.com).
(Bu kod settings.php 'Veritabanı ayarları' bölümünde):
$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;
}
?>
Bu, çoğu amaç için oldukça iyi çalışıyor, ancak paylaşılan settings.php dosyamızda bir sürü yabancı kodun olduğu anlamına geliyor ... daha iyi bir yolu var mı?