CakePHP DB接続情報の設定

DBを phpMyAdmin で作成したので
次に、DBへの接続情報の設定を行います
(本来は、SQLコマンドで作成できれば、のちのちsqlファイルから
コマンドで作成できるので、とても役立つのですが、これは今後の課題です)
とりあえず、それは置いておいて
必要なファイルを作成します
DBへの接続情報を設定するには
database.php に記述するのですが
初期の状態ではこのファイルは存在しません
そこで、database.php.default をコピーし
このファイルを作成する必要があります
cd /var/www/cakephp/app/Config/
で移動して
cp database.php.default database.php
でファイルを作成します
次に。vim database.php でファイルを開き

class DATABASE_CONFIG {
public $default = array(
'datasource' => 'Database/Mysql',
'persistent' => false,
'host' => 'localhost',
'login' => 'user',
'password' => 'password',
'database' => 'database_name',
'prefix' => '',
//'encoding' => 'utf8',
);
public $test = array(
'datasource' => 'Database/Mysql',
'persistent' => false,
'host' => 'localhost',
'login' => 'user',
'password' => 'password',
'database' => 'test_database_name',
'prefix' => '',
//'encoding' => 'utf8',

の部分を変更します
なお、パラメータについては
初心者のためのCakePHP2.0 プログラミング入門:
を参考にさせていただきました
ちなみに、変更するのは default 項目のみ

class DATABASE_CONFIG {
public $default = array(
'datasource' => 'Database/Mysql',
'persistent' => false,
'host' => 'localhost',
'login' => 'myapps_user',
'password' => 'phpMyAdminで決めたパスワード',
'database' => 'myapps',
'prefix' => '',
'encoding' => 'utf8',
);

というように変更します
変更したら、保存しファイルを閉じます
この状態でブラウザでアクセスしても
Your tmp directory is NOT writable.
となっているので、
次に
Your tmp directory is NOT writable.
の対処を行います
このメッセージは
tmp ディレクトリに書き込み権限がないことが原因です
試しに ls コマンドでパーミッションを調べてみます

ll ../../app/
合計 64
drwxrwxr-x 14 snowpool snowpool 4096 2012-02-05 16:03 ./
drwxrwxr-x  6 snowpool snowpool 4096 2012-02-05 16:03 ../
-rw-rw-r--  1 snowpool snowpool  141 2012-02-05 16:03 .htaccess
drwxrwxr-x  3 snowpool snowpool 4096 2012-02-24 22:58 Config/
drwxrwxr-x  4 snowpool snowpool 4096 2012-02-05 16:03 Console/
drwxrwxr-x  3 snowpool snowpool 4096 2012-02-05 16:03 Controller/
drwxrwxr-x  2 snowpool snowpool 4096 2012-02-05 16:03 Lib/
drwxrwxr-x  3 snowpool snowpool 4096 2012-02-05 16:03 Locale/
drwxrwxr-x  4 snowpool snowpool 4096 2012-02-05 16:03 Model/
drwxrwxr-x  2 snowpool snowpool 4096 2012-02-05 16:03 Plugin/
drwxrwxr-x  4 snowpool snowpool 4096 2012-02-05 16:03 Test/
drwxrwxr-x  2 snowpool snowpool 4096 2012-02-05 16:03 Vendor/
drwxrwxr-x  9 snowpool snowpool 4096 2012-02-05 16:03 View/
-rw-rw-r--  1 snowpool snowpool  642 2012-02-05 16:03 index.php
drwxrwxr-x  6 snowpool snowpool 4096 2012-02-05 16:03 tmp/
drwxrwxr-x  6 snowpool snowpool 4096 2012-02-05 16:03 webroot/

みてのとおり、wの権限がないため、書き込みできません
このため、この権限を変更します
chmod -R 777 /var/www/cakephp/app/tmp/
これで、権限が変更され、再度
http://localhost/cakephp
へアクセスすると、すべてオールグリーンとなり
使用可能となります

コメントを残す

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