三流プログラマの雑記

プログラム、ゲーム、株、その他雑記など書いてます。

CakePHPをWindows環境で構築してみる

ということで、今回の記事はCakePHPなるものに興味を持ったので環境構築をしてみた。

その際の手順をとても簡潔にまとめてみる。

省略事項

  1. Apache のインストール
  2. PHPのインストール
  3. Apache + PHPの連携
  4. MySQLのインストール
  5. MySQLでのユーザ作成

うん、省略しすぎな気がする、、、が、
ここら辺自分のPCではセットアップ済みなので、
省略します。(環境構築用の資料はとても多いです)

さて、今回使用するCakePHPは、2.6.1ネットにあった安定版を利用。

CakePHP: 高速開発 php フレームワーク。 Home

PHP.ini のタイムゾーンを設定する

PHPをインストールしたディレクトリのphp.iniの
date.timezone に Asia/Tokyo と設定する

CakePHP の展開

  1. 上記URLからファイルをダウンロードする
  2. Apachのhtdocsディレクトリ配下で解等
    • 今回は「cakephp」というディレクトリ配下に解等

CakePHPの設定

そのままページにアクセスするとエラーやらWarningやらが沢山(汗
そのため、順に解決していく

Security.salt及びSecurity.cipherSeedの変更

セキュリティ関連の設定が初期値のままではいかんとですよと
警告を出してくるので、以下ファイルを修正していく。

app/Config/core.php

L225:Configure::write('Security.salt', 'HOGEHOGEHOGEHOGE');
L230:Configure::write('Security.cipherSeed', '0123456789');

HOGEや数字はランダムな値を適当に設定する。

画面を表示すると一部warningが消えているはず

データベースの設定

MySQLに開発に使用するユーザ、DBを作成する。

「app/Config/database.php.default」をコピーし「app/Config/database.php」を作成する。

そして以下のように設定する。

<?php
	public $default = array(
		'datasource' => 'Database/Mysql',
		'persistent' => false,
		'host' => 'localhost',
		'login' => 'hogehoge',
		'password' => 'hugahuga',
		'database' => 'cake_sample',
		'prefix' => '',
		'encoding' => 'utf8',
	);
?>

ページ下部のwarningが消えていることを確認する。

mod_rewriteの設定

mod_rewriteの設定が出来ると何かしら良いとのことなので、
とりあえず有効にする。

Apachehttpd.conf の以下の設定を有効にする。

LoadModule rewrite_module modules/mod_rewrite.so

.htaccessに関する設定

<Directory "CakePHPのディレクトリ">
    Options FollowSymLinks
    AllowOverride All
</Directory>

面倒なのでとりあえずの設定をhttpd.confの一番下に設定。

多分完成!

アクセスすると最初と比べると天と地の差の以下のような画面が表示されます。
f:id:morio_1101:20150124223955p:plain

文字ばっかりでわかりにくいわ!
という人のために、参考にした手順のURL


CakePHPインストール - CakePHPの使い方

DebugKit のインストール

CakePHPにはDebugKitなるツールが存在しているらしい

ということで、とりあえずインストールしてみる。
以下からZIPファイルをダウンロードする。
cakephp/debug_kit · GitHub

「plugins/debug_kit」配下にダウンロードしたファイルをぶち込み、
以下の設定をごりごり変更

app/Config/bootstrap.php

CakePlugin::load( 'DebugKit');

app/Controller/AppController.php

var $components = array( 'DebugKit.Toolbar');

app/Config/core.php

Configure::write('debug', 1);

app/View/Layouts/default.ctp の以下のコードを削除するらしい、、、

<?php echo $this->element('sql_dump'); ?>

ほう、ページの上にサポートツールが表示されるようになりましたとさ

ただこれ気をつけないといけないっぽいね。
どんなものかと調べていると、本番運用でデバックツールの消し忘れっぽいサイトが、、、
便利なものには棘があるということか、、、
多分これ運用停止してそうな気がしなくも無いけど

タイピングラップラー刃牙

さて、インストールもとりあえず出来たし、色々触ってみようかな