サイトアイコン マーカーネット株式会社

CakePHPで開発環境と本番環境の設定を切り替える方法。

CakePHPで開発環境と本番環境の設定を切り替える方法。

CakePHPフレームワークを利用し、データベースを利用したCMSなど制作する際、開発環境と本番環境で同じファイルにしたい場合があるかと思います。

今回は、『SetEnv』を利用した開発環境と本番環境の切り替え方法をご紹介します。

一般的な方法として、$_SERVER環境変数で条件分岐する方法がございますが、
この方法で、注意しないといけないポイントとして
CRONなどでコンソールからプログラムを動作させる場合、$_SERVER環境変数は利用できないということです。

その場合、SetEnvを利用してみましょう。

1)開発環境の .htaccess  に下記を追記(.htaccess を使える環境が前提。httpd.confでも構いません。)
SetEnv APL_ENV development

※本番環境では不要です。

2)CakePHP の最初に読み込まれる index.php に下記を追記
defined(‘APL_ENV’) || define(‘APL_ENV’, (getenv(‘APL_ENV’) ? getenv(‘APL_ENV’) : ‘production’));

3)データベースの切替ファイルで下記のように条件分岐

if ( env(‘APL_ENV’) == ‘development’ ) {
}

このような方法ですとコンソールを利用したプログラムにも対応できるかと思います。

モバイルバージョンを終了