PHPフレームワーク「CodeIgniter」の最初に設定するであろう設定箇所のメモです。
複数のアプリケーションを構築する前提で、以下のように application ディレクトリと html ディレクトリ配下に <APP> というディレクトリを作成しています。
application/<APP>
html/<APP>
/path/to/production/ci
/path/to/development/ci
上記の前提で、ディスパッチャーである index.php(html/<APP>/index.php) の先頭の方に、以下のコードを追加します。
if (strpos(__FILE__, '/path/to/development/ci') === 0) { define('ENVIRONMENT', 'development'); } if (strpos(__FILE__, '/path/to/production/ci') === 0) { define('ENVIRONMENT', 'production'); } defined('ENVIRONMENT') || exit("`ENVIRONMENT' is not defined\n");
本番サーバーでは、定数:ENVIRONMENT の値が production に、
開発サーバーでは、定数:ENVIRONMENT の値が development になります。
※ステージング環境などが必要な場合は、適宜追加します。
$application_folder = '../../ci/application/<APP>';
switch (ENVIRONMENT) { case 'development': $db['default']['hostname'] = 'localhost'; $db['default']['username'] = 'username'; $db['default']['password'] = 'password'; $db['default']['database'] = 'database_dev'; $db['default']['db_debug'] = true; break; case 'production': $db['default']['hostname'] = 'localhost'; $db['default']['username'] = 'username'; $db['default']['password'] = 'password'; $db['default']['database'] = 'database'; $db['default']['db_debug'] = false; break; default : } // ↓コメントアウトする //$db['default']['db_debug'] = FALSE;
$route['default_controller'] = "welcome"; ↓ $route['default_controller'] = "index";
$autoload['libraries'] = array('database');
% chmod 777 application/<APP>/cache % chmod 777 application/<APP>/logs
以上です。
必要に応じて、今後も追加していく予定です。