CakePHP PHP

CakePHP2.4系のインストールと設定方法

投稿日:

今までずーっとJava/サーブレット関連の開発をしていたのですが世の中の流れか不明ですが、今回PHPの開発をすることになりました。
少し触ったことがある程度で、フレームワークとかは何も使っていない素のPHPだったのですが、今回CakePHP2.4系をフレームワークとして使うことにしました。
というわけで、インストールなどの記録を残していきたいと思います。

動作環境

Windows7 Professional 64bit
Apache 2.2
MySQL 5.1
PHP5

基本的に環境はXAMPPを使って構築しています。

CakePHPのダウンロード

cakephp.jpからダウンロードします。
安定版の最新は2.4系だと思いますので、現時点の安定版で最新の2.4.5をダウンロードします。
download

CakePHPのインストール

インストールといっても、ダウンロードしたzipファイルを展開するだけです。
ここではわかりやすくするため、ApacheのDocumentRoot直下にcakeというディレクトリ名で配置して
http://ホスト名/cake/
でアクセスできるようにしました。

CakePHPの設定をする前に

自分の場合はXAMPPを使ってローカルホスト上に環境を構築しましたので、
http://localhost/cake/
とアクセスできます。
とりあえずアクセスしてみたら
setup1
まぁ、こんな感じで赤と黄色の画面が表示されます。それぞれエラーと警告という意味だと思いますので修正していきます。

CakePHPの設定

Security.saltとSecurity.cipherSeedの変更

赤いエラーのSecurity.saltとSecurity.cipherSeedを設定します。
Security.saltは任意の英数字で40文字
Security.cipherSeedは任意の数字で30文字
ということなので、それぞれ設定します。厳密に設定する場合は自分で考えてもいいと思いますが、今回は確認用なので外部サービスを使って作成しました。
CakePHP用 Security.salt Security.cipherSeed WEBシステム開発 ホームページ制作 クラウドコンピューティング 静岡県浜松市 株式会社レジアス
こちらのページにアクセスするとアクセス毎にランダムでそれぞれの値が表示されますので、それを利用させてもらいました。
運用サーバーなどに配置するアプリケーションなどの場合は自分で上記ソルト値を作成したほうがよいと思います。

cake/app/Config/core.phpを開きます。
Security.saltで検索すると設定箇所が見つかりますので、それぞれ入力します。

/**
 * A random string used in security hashing methods.
 */
	Configure::write('Security.salt', '任意の英数字40文字');

/**
 * A random numeric string (digits only) used to encrypt/decrypt strings.
 */
Configure::write('Security.cipherSeed', '任意の数字30文字');

値を設定して保存し再度ブラウザで表示させてみると
setup2
赤いエラーがなくなりました。というわけで、次に黄色い警告を修正します。

データベースの設定

続いてデータベースの設定です。
データベースの設定ファイルを作成します。
cake/app/Config/database.php.default
というファイルがありますので、コピー(リネーム)して
cake/app/Config/database.phpを作成します。

今回XAMPPを使っているのでphpmyadminを使ってcakedbというデータベースを作成しました。
cake/app/Config/database.phpをエディタ等で開いて編集します。
今回は以下のように設定しましたが自分の環境によって設定してください。

	public $default = array(
		'datasource' => 'Database/Mysql',
		'persistent' => false,
		'host'       => '127.0.0.1',
		'login'      => 'ユーザ名',
		'password'   => 'パスワード',
		'database'   => 'cakedb',
		'prefix'     => '',
		'encoding'   => 'utf8',
	);
DebugKitのインストール

最後にDebugKitをインストールします。
おそらくこれは必須ではないと思いますが一応インストールしておきます。
(1)DebugKitのダウンロード
設定画面にDebugKitのGitHubのアドレスがあるのでブラウザで開きます。
ない場合はhttps://github.com/cakephp/debug_kitを開いてください。
DebugKitのGitHubのページで左にDownload ZIPというアイコンがあるのでクリックしてダウンロードします。
DebugKit
ダウンロードして解凍したらフォルダ名をDebugKitとしその直下にファイルが配置されているように変更して
cake/app/Plugin
ディレクトリに配置します。
DebugKitFolder

(2)設定ファイルの変更
cake/app/Config/bootstrap.php
をエディタで開いて末尾に

CakePlugin::load('DebugKit');

を追加し保存。

cake/app/Controller/AppController.php
をエディタで開いてAppControllerのクラスを定義している部分を以下のように変更

class AppController extends Controller {
    var $components = array('DebugKit.Toolbar');
}

設定の確認

上記の設定を行なって再度CakePHPのセットアップ画面を開くとすべて緑になっている「はず」です。
setup3

結びに

DebugKitは唯一外部からダウンロードしましたが、XAMPPの場合それ以外は何もライブラリをインストールしていません。
他のライブラリに依存していないということで、ある意味で軽量なフレームワークと言えると思います。
Javaの例えばSrpingとかだと依存ライブラリが非常に多く、それこそMavenのようなビルド構成管理ツールがないと少ししんどく感じるのですがCakePHPは非常に導入が行いやすかったです。

-CakePHP, PHP

執筆者:


  1. […] なお、僕のはじめてはこちらのページなどを参考にして導入しました。 […]

comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

mixhostにPHP Deployerを使ってデプロイする

今年の夏に、このブログのホスティング環境をmixhostに切り替えました。 mixhostはComposerも使えるのでDeployerでデプロイに挑戦してみました。 Gitのインストール Deplo …

CakePHPで独自のコントローラーを継承する方法

CakePHPで独自に作ったコントローラーを継承する方法を調べました。 自分はJavaをよく使っていたというのは変かもしれませんがコントローラーの継承というのはそれほど違和感はないのですがCakePH …

no image

Windows7でXAMPPを使う <設定編>

前回、インストールを行ったので今回設定をしてみたいと思います。 前提条件として、外部には公開しないので、ガチガチに設定は行いませんが必要最低限の設定を行いたいと思います。 といっても、ほとんど設定する …

Laravelでテーブルの主キーに文字列型を使う場合のモデルの定義

ポストタイトルの通りなんですけどLaravelでテーブルの主キーに文字列型を使う場合ですがModel#findで検索すると結果は帰ってくるのですが主キー項目の値を表示されると0と表示されてしまいました …

CakePHPでビューからコンポーネントを呼び出す方法

CakePHPで各ビューで特定の処理をコンポーネントでまとめて呼び出したい場合があると思います。 単純に考えるとビューにコンポーネントをセットすればよいと思いますが、ヘルパーからコンポーネントを呼び出 …

ad-sidebar




カテゴリー