大分出遅れた感がありますが、最近cakephp3のサービスを構築したので、
それを兼ねてメモ。
早速、cakephp3の公式サイトでインストール方法を確認。
http://book.cakephp.org/3.0/ja/installation.html
システム要件を確認すると。。。
システム要件
HTTPサーバー。例: Apache。mod_rewrite が推奨されますが、必須ではありません。
PHP 5.5.9 以上 (PHP 7 も含む)
PHP mbstring 拡張
PHP intl 拡張
…(PHP 7も含む)!
せっかくなので、速いとウワサのphp7に、php-fpmと、nginxの構成で、
yumでインストールしてみました!!
構築した構成はこれ!
- CentOS7
- php7
- php-fpm
- nginx
- MySQL
1. php7のインストール
こちらの記事参考にサクッとインストールできちゃいました!
「DQNEO起業日記」さん、ありがとうございます!(楽泣)
参考:http://dqn.sakusakutto.jp/2015/12/centos7_yum_install_php70.html
元々php5など入っている場合は、あらかじめ削除しておいた方がいいかも。
あと周辺モジュールも。
一括で既存phpをyumで削除。。扱い注意
# yum remove php-*
2. mysqlのインストール
「kakiro-web」さん、ありがとうございます!
http://www.kakiro-web.com/linux/mysql-yum-repository-install.html
3. php-fpm と nginxをインストール
nginxをインストール
# yum install nginx
php-fpmのインストール
# yum install php70-fpm
※php7用を
4. php-mbstringやphp-intlをインストール
php7用のものを。
とりあえずパッケージ名を調べる場合は、
# yum list php*intl
等
5. cakephp3のインストール
公式サイト参考に。。
http://book.cakephp.org/3.0/ja/installation.html
あとは試しに、DBのテーブル等作って
下記コマンドで簡単にusersのMVCをさくっと作成してみる
bin/cake bake users all
下記インストール時にひっかかった部分メモ
トラブルシューティング その1
Database driver Cake\Database\Driver\Mysql cannot be used due to a missing PHP extension or unmet dependency
yum install php70-php-mysqlnd
トラブルシューティング その2
いくらサイトにアクセスしてもcakephpが表示されない。
エラーとかみて、それでもそらしいログがない場合。
php5.4とかで一度プロジェクトファイルを作ってしまった場合等。
php composer.phar create-project --prefer-dist cakephp/app my_app
などとそもそもcreate-projectからし直す。
トラブルシューティング その3
Controller class Index could not be found.
tmpとlogsのパーミッションを疑うorSELinuxを疑う。
僕の場合は、パーミッションでした。