americandog1993の日記

プログラマー歴半年のメモ

VPSでCakePHP② CakePHP環境構築

VirtualBoxのCentOS7にCakePHPを導入する - Qiita
ほとんどこの通りに進めればいけた。

Apache, git, unzipを入れる

$ sudo yum -y install git unzip httpd

httpdはApacheWebサーバ。
gitはそのままgit。
unzipはなんだろう。解凍かなんかするためのツール?(たぶん)

Apacheを起動しておく。

$ sudo systemctl start httpd

firewall設定

Apacheを入れたのでアクセスできるようにしておく。

$ sudo firewall-cmd --zone=public --add-service=http --permanent
$ sudo firewall-cmd --add-port=80/tcp --zone=public --permanent
$ sudo firewall-cmd --reload

ブラウザでVPSIPアドレスにアクセスしてApacheのテストページが表示されればひとまずOK。

MySQLを入れる

$ sudo yum -y install http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
$ sudo yum -y install mysql-community-server

なぜかmysql-community-serverのインストールがうまくいかないことがあるので注意。
その場合は諦めずもう一度同じコマンド実行したらインストールできる(はず)。

PHP7を入れる

$ sudo yum -y install epel-release
$ rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
$ yum -y install --enablerepo=remi,remi-php70 php php-devel php-mbstring php-intl php-mysql

Composerを入れる

ComposerはRailsでいうbundler的なツールらしい。
色々必要なアレコレをうまいことやってくれる便利なやつ。

$ curl -sS https://getcomposer.org/installer | php
$ sudo mv composer.phar /usr/local/bin/composer

CakePHPプロジェクト作成

$ cd /var/www/html
$ sudo /usr/local/bin/composer create-project --prefer-dist cakephp/app cakephp_app

プロジェクト名は任意に。
続いてCakePHPのページがルートに表示されるようにする。

$ sudo vi /etc/httpd/conf/httpd.conf
# /etc/httpd/conf/httpd.conf
DocumentRoot "/var/www/html/cakephp_app/webroot"

Apacheを再起動。

$ sudo systemctl restart httpd

ブラウザでアクセスしてCakePHPの画面は表示されればOK。
Databaseのところが赤くなってると思うが後で設定していく。

SELinux

ブラウザでアクセスしてうまくいかなければSELinuxをオフにしてみる。

$ sudo setenforce 0