CentOS 6
Sponsored Link

PHP 5.6 インストール
2016/07/28
 
CentOS 6 標準の PHP のバージョンは 5.3系ですが、5.6系を RPM パッケージでインストールします。
[1] CentOS SCLo Software Collections からインストール可能です。
なお、デフォルトバージョンの 5.3系がインストールされた状態でも、Software Collections パッケージは別パスにインスールされるため、複数バージョンの共存が可能となっています。
# SCLoからインストール

[root@dlp ~]#
yum --enablerepo=centos-sclo-rh -y install rh-php56
[2] Software Collections パッケージは /opt 配下にインストールされます。
環境変数を読み込んで利用するには以下のように実行します。
# 環境変数を読み込む

[root@dlp ~]#
scl enable rh-php56 bash
[root@dlp ~]#
php -v

PHP 5.6.5 (cli) (built: Mar 23 2016 19:16:57)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2014 Zend Technologies
[root@dlp ~]#
which php

/opt/rh/rh-php56/root/usr/bin/php
[3] ログイン時に自動的に有効にするには以下のように設定します。
[root@dlp ~]#
vi /etc/profile.d/rh-php56.sh
# 以下の内容で新規作成

#!/bin/bash

source /opt/rh/rh-php56/enable
export X_SCLS="`scl enable rh-php56 'echo $X_SCLS'`"
[4] Apache httpd で 5.6系を利用する場合の例です。ここでは SCLo 提供の Apache httpd 2.4 と併用します。
# SCLoからインストール

[root@dlp ~]#
yum --enablerepo=centos-sclo-rh -y install rh-php56-php httpd24
[root@dlp ~]#
/etc/rc.d/init.d/httpd stop

[root@dlp ~]#
/etc/rc.d/init.d/httpd24-httpd start

Starting httpd: [ OK ]
# ドキュメントルートに phpinfo を作成して確認

[root@dlp ~]#
echo '<?php phpinfo(); ?>' > /opt/rh/httpd24/root/var/www/html/info.php

[root@dlp ~]#
curl http://localhost/info.php | grep 'PHP Version' | tail -1 | sed -e 's/<[^>]*>//g'

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 68819    0 68819    0     0  5529k      0 --:--:-- --:--:-- --:--:-- 6109k
PHP Version 5.6.5
[5] Apache httpd 2.4 + PHP-FPM の場合は以下のように設定します。
# SCLoからインストール

[root@dlp ~]#
yum --enablerepo=centos-sclo-rh -y install rh-php56-php-fpm
[root@dlp ~]#
vi /opt/rh/httpd24/root/etc/httpd/conf.d/rh-php56-php.conf
# 31行目:以下のように変更

<FilesMatch \.php$>
#
    SetHandler application/x-httpd-php
    SetHandler "proxy:fcgi://127.0.0.1:9000"

</FilesMatch>
[root@dlp ~]#
/etc/rc.d/init.d/rh-php56-php-fpm start

[root@dlp ~]#
/etc/rc.d/init.d/httpd24-httpd restart

 
Tweet