- EC2をインストール
- セキュリティグループの設定からインバウンドのタブを選び「編集」を押し、HTTPからのアクセスを許可。
- ec2-userでログイン
-
システムロケールを変更
$ sudo bash # vi /etc/sysconfig/i18n - LANG=en_US.UTF-8 + LANG=ja_JP.UTF-8
-
システムロケールの有効化
# . /etc/sysconfig/i18n
-
タイムゾーンを日本に変更
# cp /etc/localtime /etc/localtime.orig # ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime # vi /etc/sysconfig/clock - ZONE="Asia/Tokyo" - UTC=true + ZONE="Asia/Tokyo" + UTC=false
-
不要なhttpd/phpをアンインストール
# yum erase php php-cli php-common # yum erase httpd httpd-tools
-
PHP7とpostgresqlをインストール(ついでにmlocateも)
# yum -y install php70 php70-intl php70-mbstring php70-pgsql php70-pdo # yum -y install postgresql95 postgresql95-server postgresql95-devel # yum -y install mlocate git
-
composerのインストール
こちらのURLのCommand-line installationの部分を実行してください:
https://getcomposer.org/download/
以下はサンプルです:# php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" # php -r "if (hash_file('SHA384', 'composer-setup.php') === 'aa96f26c2b67226a324c27919f1eb05f21c248b987e6195cad9690d5c1ff713d53020a02ac8c217dbf90a7eacc9d141d') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;" # php composer-setup.php # php -r "unlink('composer-setup.php');"
-
composer.pharを移動させます
# mv composer.phar /usr/local/bin/composer
-
ec2-userのPATHに/usr/local/binを追加
# exit $ cd $ vi /home/ec2-user/.bash_profile - PATH=$PATH:$HOME/.local/bin:$HOME/bin + PATH=$PATH:$HOME/.local/bin:$HOME/bin:/usr/local/bin
-
cakephp3のインストールディレクトリを書き込み可能に
$ sudo bash # cd /var/www # chmod 777 html # exit
-
cakephp3をインストール
$ source /home/ec2-user/.bash_profile $ cd /var/www/html $ composer self-update && composer create-project --prefer-dist cakephp/app ./app
*特定のバージョン、例えば3.1系の最新をインストールしたい場合は、
$ composer self-update && composer create-project --prefer-dist cakephp/app:3.1.* ./app
とする
途中でSet Folder Permissionsについて聞かれたらYesと回答:
Set Folder Permissions ? (Default to Y) [Y,n]? Y
-
データベースの設定を変更(default)
変更箇所はapp.phpの223~234行
$ vi /var/www/html/app/config/app.php - 'driver' => 'Cake\Database\Driver\Mysql', + 'driver' => 'Cake\Database\Driver\Postgres', - 'username' => 'my_app', + 'username' => 'postgres', - 'password' => 'secret', + 'password' => '', - 'database' => 'my_app', + 'database' => 'cakephp_dev',
-
タイムゾーンを変更
/var/www/html/app/config/bootstrap.php- date_default_timezone_set('UTC'); + date_default_timezone_set('Asia/Tokyo');
-
データベースの設定を変更(test)
手順11と同じだが、変更箇所はapp.phpの268~274行。
また'database' => 'cakephp_test'とする -
URLのリライトを可能にする
変更箇所は/etc/httpd/conf/httpd.confの151行目
$ sudo bash # vi /etc/httpd/conf/httpd.conf - AllowOverride None + AllowOverride All
-
DocumentRootを変更する
$ sudo bash # vi /etc/httpd/conf/httpd.conf - DocumentRoot "/var/www/html" + DocumentRoot "/var/www/html/app"
-
データベースの初期化
# su - postgres $ /usr/lib64/pgsql95/bin/initdb -D /var/lib/pgsql95/data/ $ exit
-
postgresqlとhttpdの起動
# service httpd start # service postgresql95 start
-
データベースの作成
# /usr/bin/createdb -U postgres -p 5432 -h localhost cakephp_dev
-
動作確認
ブラウザを開き、ec2のパブリックIPを指定する
More than 5 years have passed since last update.
Amazon Linux上にCakePHP3をインストール(Postgresql、PHP7)
Last updated at Posted at 2016-12-17
Register as a new user and use Qiita more conveniently
- You get articles that match your needs
- You can efficiently read back useful information
- You can use dark theme
List of users who liked
36