Page contents

デプロイ

アプリケーションが完成したら、またはその前に、それをデプロイしたいと思うことでしょう。 CakePHPアプリケーションをデプロイする際には、いくつかやっておかなければならないことがあります。

ドキュメントルートの指定

アプリケーションでドキュメントルートを正しく指定することはコードをセキュアに、またアプリケーションを安全に保つために重要なステップの内の一つです。 CakePHPのアプリケーションは、アプリケーションの app/webroot にドキュメントルートを指定する必要があります。 これによってアプリケーション、設定のファイルがURLを通してアクセスすることができなくなります。 ドキュメントルートの指定の仕方はWEBサーバーごとに異なります。 WEBサーバー特有の情報についていは 応用インストール ドキュメントを見てください。

core.phpの更新

core.phpの更新、とりわけ debug 値は非常に重要です。 debug = 0 にすることで、広くインターネットに晒されることがあってはならない多くの開発用の機能を無効にできます。 debugの無効化は以下の種々のものごとに変更を与えます:

  • pr()debug() で生成されるデバッグメッセージが無効化されます。
  • CakePHPコアのキャッシュが、開発時の10秒ごとの代わりに99年ごとに破棄されるようになります。
  • Errorビューが吐く情報が少なくなり、代わりに共通のエラーメッセージが与えられます。
  • エラーが表示されなくなります。
  • 例外のスタックとレースが無効になります。

上記に加えて、プラグインやアプリケーションの拡張が debug を用いてその挙動を変えます。

同じコアを使う複数のCakePHPアプリケーション

同じCakePHPコアを使う複数のアプリケーションを設定する方法はいくつかあります。 PHPの include_path を使うか、アプリケーションの webroot/index.phpCAKE_CORE_INCLUDE_PATH を指定することができます。 一般的に、PHPの include_path を使用するのがより簡単で堅牢となります。 CakePHPは include_path も見るように事前に設定されていますので、簡単に使うことができます。

php.ini の中で、既存の include_path ディレクティブを見つけ、それに追加するか、 include_path ディレクティブを追加してください:

include_path = '.:/usr/share/php:/usr/share/cakephp-2.0/lib'

上記は*nixサーバーで実行し、CakePHPが /usr/share/cakephp-2.0 にあると仮定しています。