CakePHPのインストール
仕事でCakePHPを使うことになった。WEBアプリじゃなくてコンソールアプリだが。
とりあえずCentOSにインストールしてみた。
インストール
composerを使ってインストールした。
/var/www/html の下に example-app というフォルダを作成。そのフォルダに公式サイトの応用インストールというページに書いてある以下の composer.json をまるっとコピーして example-app に置いた。
{
"name": "example-app",
"require": {
"cakephp/cakephp": "2.6.*"
},
"config": {
"vendor-dir": "Vendor/"
}
}
そして、"composer install" を実行。
# composer install
Loading composer repositories with package information
Installing dependencies (including require-dev)
- Installing cakephp/cakephp (2.6.7)
Downloading: 100%
Writing lock file
Generating autoload files
#
これでCakePHP 2.6.7のファイルの配置が完了。ディレクトリ構成は大体以下のようになる。
cakephpの下にさらにcakephp。なんか変な気もするが、こういうものなのか?
example-app/
+-composer.json
+-Vender/
+-bin/
+-autoload.php
+-composer/
+-cakephp/
+-cakephp/
+-app/
+-Config/
+-Console/
+-Controller/
+-Lib/
+-Locale/
+-Model/
+-Plugin/
+-Test/
+-Vender/
+-View/
+-tmp/
+-webroot/
+-lib/
また、CakePHPはApacheのmod_rewriteを利用するが、これは既に使えるようになっていたので特に何かする必要はなかった。
設定
timezoneの設定
デフォルトのtimzoneを設定。これはCakePHPとか関係なく、PHPをインストールした後すぐにやっておかなければならないことだった。
/etc/php.ini で下記のように設定する。
最初、/etc/httpd/conf.d/php.conf に書き込んだらエラーなって悩んでしまった。このApacheのPHPに関する設定ファイルであって、PHPの設定ファイルではなかったorz
date.timezone = Asia/TokyoSecurity.saltとSecurity.cipherSeedの変更
app/Config/core.php に設定されている Security.salt と Security.cipherSeed を修正する。初期値のままだと初期画面に警告がでる。
app/tmpのパーミッション変更app/tmpディレクトリ以下に一時ファイルが作られるので、パーミッションの設定をする。
chmod -R 777 app/tmpDB接続の設定
DB接続の設定は app/Config の datababase.php.default を database.php にリネームして行う。デフォルトではMySQL用。PostgreSQLを使う場合は datasource を書き換え、port と schema を加える。encoding はコメントになっていたので有効にする。host、login、password、database は自分の環境に合わせて変更する。
class DATABASE_CONFIG {
public $default = array(
'datasource' => 'Database/Postgres',
'persistent' => false,
'host' => '192.168.1.11',
'port' => '5432',
'login' => 'user',
'password' => 'pass',
'database' => 'mydb',
'schema' => 'public',
'prefix' => '',
'encoding' => 'utf8',
);
…
バーチャルホストの設定、SELinuxの無効化、Apacheの再起動
「Laravelのインストール」を app/webroot をドキュメントルートとしてバーチャルホストの設定し、SELinuxを無効化して、Apacheを再起動。
ここまでやって、設定したバーチャルホストにアクセスすると、CakePHPのデフォルトのページが表示される。
#まだ「DebugKitがインストールされていない」というWarningが出ているが。
参考ページ:
応用インストール — CakePHP Cookbook 2.x ドキュメント
CakePHPのダウンロードとインストール - CakePHPの使い方
AWS EC2にPHP5.5環境でCakePHPを導入 - Qiita
インストール — CakePHP Cookbook 2.x ドキュメント
CakePHPでPostgreSQLを使う - Qiita
参考ページ:Composer
Composerを使ってPHPのパッケージを簡単インストール (2/3):CodeZine


Recent Comments