OpenSUSEでCakePHP

CakePHPOpenSUSEに導入したい

チャットを作りたいのでRoRとかNode.jsとかありますが,cakePHPを使いました. データベースに接続する際に手間取ったのでメモ

ダウンロード

ここからゲットできる.これを書いた時はVersionは2.3.10でした.→ CakePHP

$ unzip cakephp-2.3.10.zip
$ mv cakephp-2.3.10 /srv/www/htdocs/cakephp
$ cd /srv/www/htdocs/cakephp/app/
$ chmod -R 777 tmp    (tmp以下を書き込みできるようにする)

次にセキュリティハッシュ用のカスタム文字列と暗号化用に必要なSeed値定義します. 適当な文字列を突っ込んどいてください.

$ vim /Config/core.php
/**
 * A random string used in security hashing methods.
 */
Configure::write('Security.salt', '適当な文字列!');

/**
 * A random numeric string (digits only) used to encrypt/decrypt strings.
 */
Configure::write('Security.cipherSeed', '適当な数列');

これでひとまずCakePHPが使える状態になるはずです. いや,かなり適当な感じに書いたのでうまくいかないかもしれません.そのときはggrksというわけで. じゃあ何を伝えたいことは何かというとデータベースにつなぐときに起きた問題の解決方法です.

CakePHP 2 is not able to connect to MySQL database

さてデータベースに接続するためにdatabase.phpを以下のように書き換えたのですが…

public $default = array(
‘datasource’ => ‘Database/Mysql’,
‘persistent’ => false,
‘host’ => ‘******’,
‘login’ => ‘username’,
‘password’ => ‘password’,
‘database’ => ‘mydatabase’,
‘prefix’ => ”,
‘encoding’ => ‘utf8′,
);

CakePHP 2 is not able to connect to MySQL databaseみたいなエラーが出てる.
はぁなんで?と思いながらググるとどうやらPHP環境にDatabase Objectが無いってことらしい.PDOっていうやつやね.
んで

sudo zypper install php5-pdo

そしたらエラー直った

Cake is able to connect to the database.

あとぉー、デフォルトではapache2のmoduleのrewriteを有効にする必要がありまして、rootになって

a2enmod rewrite

をすればおk
このエラーでぐぐっても他のディストリビューションの情報ばかりだったので少々面倒でした.
はい,めちゃくそ雑な記事でした

というか・・・公式ドキュメントがやっぱり最強ですね。

入門者の疑問はほとんどここで解決できるので、一通り読んでおくのをおすすめします。 ↓

Cookbook 2.x