CakePHP3をUbuntu16.04にインストールする
諸事情によりUbuntuから開発を行うことに。
下準備
下記の環境が用意されていること(Cookbookより)
- HTTPサーバー。例: Apache。mod_rewrite が推奨されますが、必須ではありません。
- PHP 5.5.9 以上 (PHP 7 も含む)
- PHP mbstring 拡張
- PHP intl 拡張
サポートされているデータベースエンジン
- MySQL (5.1.10 以上)
- PostgreSQL
- Microsoft SQL Server (2008 以上)
- SQLite 3
拡張モジュールが入っているか確認
php -m
余談だが、php -i はphpinfo の実行結果を表示してくれる。違いがわからなかったのでφ(..)メモメモ
それぞれ下記のコマンドで確認できる。
$ php -m | grep mbstring $ php -m | grep intl
自分の環境でPHP intl 拡張がないためインストールする
$ sudo apt-get install php-intl
Composerのインストール
公式サイトみたら以前あったコマンドが消えていた。。。
$ curl -sS https://getcomposer.org/installer | php
$ sudo mv composer.phar /usr/local/bin/composer
$ php composer create-project --prefer-dist cakephp/app app_name
apache2の設定
AllowOverrideをNoneからAllに変更
/etc/apache2/apache2.conf <Directory /var/www/> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory>
mod_rewriteを有効にする
sudo a2enmod rewrite sudo service apache2 restart
DBの設定は後で書くとして、
http://localhost/app_nameにアクセスしても404 notfoundだった。
結果だけ書くと、/var/www/html以下にapp_nameを置けば良い。
ここでapacheのDocumentRootの概念を知らなかったので少し詰まった。
UbuntuでApache2のドキュメントルートをユーザーディレクトリに変更する。 in Koonzの毎日作りかけブログ
参考に試したけど結局だめだったやり方。
000-default.confを変えたらアクセスはできたけどエラーが表示された。
参考にさせていただいたサイト
CakePHP3.xの詳細インストール手順 | jMatsuzaki