目的
- サポート期間はなるべく長い方がうれしいですよね
- 言語環境自体もなるべく新しい方がなんとなくいいですよね
- (ただしSCL自体のサポート期間は3年のようです(情報提供ありがとうございます: http://qiita.com/k12u/items/3dbe6b402c6c30103920#comment-bac84b281bdae404719d))
- PHP 7.1 を使っていないのは現在のSCLでモジュールの対応があまり進んでいないように見えた(深い調査はしていない)ためです
補助説明 (SCLとは何か)
https://wiki.centos.org/AdditionalResources/Repositories を見ると説明が書いてありますが、よくこのての説明に出てくるEPELやREMIと違って、CentOSチームのSIGによってメンテされているレポジトリです。公式の信頼感はありますが、使い方にちょっと癖があるようです(*)。
(*) 著者がよく理解・調査できていない部分もあるのでフェアな物言いではないかもしれません。
よりよい説明
インストールするもの
- CentOS 7に
- MySQL 5.7
- PHP 7.0
- Apache httpd 2.4
- (普段はnginxを使っていますが今回は指定があったので)
実行手順
sudo -s
してからの実行手順。
# 競合するMariaDBを削除
yum remove mariadb-libs
# MySQL Community Server の yum repositoryを追加
yum localinstall -y https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
# MySQL Community Server をインストール
yum install -y mysql-community-server
# SCLを追加
yum install -y centos-release-scl
# PHP (+ 依存関係によりApache)をインストール
yum install -y rh-php70-php rh-php70-php-pear
# サービスの起動設定と起動
systemctl enable httpd24-httpd
systemctl start httpd24-httpd
注意事項
DocumentRoot
DocumentRoot は
/opt/rh/httpd24/root/var/www/html/
になります。(あまり調査できていないですが、不便なら別の場所にsymlinkを貼るのもいいかもしれないです。)
PHP コマンド
cli で PHPを利用したい場合は
$ scl enable rh-php70 bash
で起動したshellを経由してPHPを利用することになります。