Cloud n にオールインワンサーバを立てる 10
PHP 5.6 のインストール。
ついでに GD と ImageMagick の最新版と、それらの PHP モジュールもインストールする。
GD のインストール
デフォルトのリポジトリにある GD のバージョンを確認する。
# yum list gd (略) gd.i686 2.0.35-11.el6 base gd.x86_64 2.0.35-11.el6 base
上記は 2.0 だが remi で提供している GD は 2.1 になっている。
# yum --enablerepo=remi list gd-last (略) gd-last.x86_64 2.1.0-3.el6.remi remi
というわけで gd-last をインストールすることにした。
# yum --enablerepo=remi -y install gd-last ⇒ 問題なく入った。
ImageMagick のインストール
# yum --enablerepo=remi -y install ImageMagick-last ⇒ 問題なく入った。
PHP 5.6 のインストール
1. 基本パッケージのインストール
php56 系のパッケージを確認する。
# yum --enablerepo=remi list | grep php56 php56.x86_64 2.0-2.el6.remi remi php56-build.x86_64 2.0-2.el6.remi remi php56-mysqlnd-qc-panel.noarch 1.2.0-6.el6.remi remi php56-php.x86_64 5.6.4-2.el6.remi remi php56-php-bcmath.x86_64 5.6.4-2.el6.remi remi php56-php-channel-horde.noarch 1.0-2.el6.remi remi php56-php-cli.x86_64 5.6.4-2.el6.remi remi php56-php-common.x86_64 5.6.4-2.el6.remi remi php56-php-dba.x86_64 5.6.4-2.el6.remi remi php56-php-dbg.x86_64 5.6.4-2.el6.remi remi php56-php-devel.x86_64 5.6.4-2.el6.remi remi php56-php-embedded.x86_64 5.6.4-2.el6.remi remi php56-php-enchant.x86_64 5.6.4-2.el6.remi remi php56-php-fpm.x86_64 5.6.4-2.el6.remi remi php56-php-gd.x86_64 5.6.4-2.el6.remi remi php56-php-gmp.x86_64 5.6.4-2.el6.remi remi php56-php-horde-horde-lz4.x86_64 1.0.7-1.el6.remi remi php56-php-imap.x86_64 5.6.4-2.el6.remi remi php56-php-interbase.x86_64 5.6.4-2.el6.remi remi php56-php-intl.x86_64 5.6.4-2.el6.remi remi php56-php-ioncube-loader.x86_64 4.7.3-1.el6.remi remi php56-php-ldap.x86_64 5.6.4-2.el6.remi remi php56-php-libvirt.x86_64 0.4.8-2.el6.remi remi php56-php-libvirt-doc.noarch 0.4.8-2.el6.remi remi php56-php-litespeed.x86_64 5.6.4-2.el6.remi remi php56-php-magickwand.x86_64 1.0.9.2-9.el6.remi remi php56-php-mbstring.x86_64 5.6.4-2.el6.remi remi php56-php-mcrypt.x86_64 5.6.4-2.el6.remi remi php56-php-mssql.x86_64 5.6.4-2.el6.remi remi php56-php-mysqlnd.x86_64 5.6.4-2.el6.remi remi php56-php-oci8.x86_64 5.6.4-2.el6.remi remi php56-php-odbc.x86_64 5.6.4-2.el6.remi remi php56-php-opcache.x86_64 5.6.4-2.el6.remi remi php56-php-pdo.x86_64 5.6.4-2.el6.remi remi php56-php-pear.noarch 1:1.9.5-4.el6.remi remi php56-php-pecl-amqp.x86_64 1.4.0-2.el6.remi remi php56-php-pecl-apcu.x86_64 4.0.7-1.el6.remi remi php56-php-pecl-apcu-devel.x86_64 4.0.7-1.el6.remi remi php56-php-pecl-xrange.x86_64 1.3.2-5.el6.remi remi php56-php-pecl-xslcache.x86_64 0.7.2-5.el6.remi remi php56-php-pecl-yac.x86_64 0.9.2-1.el6.remi remi php56-php-pecl-yaf.x86_64 2.3.3-1.el6.remi remi php56-php-pecl-yaml.x86_64 1.1.1-4.el6.remi remi php56-php-pecl-yar.x86_64 1.2.4-1.el6.remi remi php56-php-pecl-yaz.x86_64 1.1.9-1.el6.remi remi php56-php-pecl-yp.x86_64 1.0.1-2.el6.remi remi php56-php-pecl-zip.x86_64 1.12.4-2.el6.remi remi php56-php-pecl-zmq.x86_64 1.1.2-4.el6.remi remi php56-php-pgsql.x86_64 5.6.4-2.el6.remi remi php56-php-phalcon.x86_64 1.3.4-1.el6.remi remi php56-php-phurple.x86_64 0.6.0-3.el6.remi remi php56-php-process.x86_64 5.6.4-2.el6.remi remi php56-php-pspell.x86_64 5.6.4-2.el6.remi remi php56-php-recode.x86_64 5.6.4-2.el6.remi remi php56-php-snmp.x86_64 5.6.4-2.el6.remi remi php56-php-soap.x86_64 5.6.4-2.el6.remi remi php56-php-suhosin.x86_64 0.9.37.1-1.el6.remi remi php56-php-tidy.x86_64 5.6.4-2.el6.remi remi php56-php-twig.x86_64 1.16.2-1.el6.remi remi php56-php-xcache.x86_64 1:3.2.0-1.el6.remi remi php56-php-xml.x86_64 5.6.4-2.el6.remi remi php56-php-xmlrpc.x86_64 5.6.4-2.el6.remi remi php56-runtime.x86_64 2.0-2.el6.remi remi php56-scldevel.x86_64 2.0-2.el6.remi remi php56-xcache-admin.noarch 1:3.2.0-1.el6.remi remi php56-xhprof.noarch 0.9.4-5.el6.remi remi
PHP 5.6 の基本セットをインストールする。 php56-php は apache のハンドラなので、これがないと php のページが動かない。
# yum --enablerepo=remi -y install php56 php56-php php56-php-cli php56-php-common
httpd を再起動する。
# service httpd restart
test1.php を作成して、 phpinfo が表示されるか確認する。
# vi /var/www/html/test1.php
- <?php
- phpinfo();
- ?>
http://xxx/test1.php にアクセスして、 phpinfo の情報が表示されれば OK。
2. PHP モジュールの追加インストール
画像系のモジュールをインストール。
# yum --enablerepo=remi -y install php56-php-gd php56-php-pecl-imagick
あとは適当なモジュール類を入れる。 php56-php-gmp やそれを必要とするモジュール類を入れる時は、最新の GMP を入れてからやった方がいいと思う。
# yum --enablerepo=remi -y install \ php56-php-bcmath \ php56-php-intl \ php56-php-mbstring \ php56-php-mcrypt \ php56-php-mssql \ php56-php-mysqlnd \ php56-php-odbc \ php56-php-pdo \ php56-php-pear \ php56-php-soap \ php56-php-xml \ php56-php-xmlrpc
PHP 設定
PHP 5.6 は /opt/remi/php56 配下のディレクトリにインストールされるので、日常的に使うファイルにアクセスしやすいようにシンボリックリンクを張っておく。
インストール先のファイル・ディレクトリ | 簡単な説明 |
---|---|
/opt/remi/php56/root/ | インストール先ディレクトリ |
/opt/remi/php56/roo/usr/bin/php | PHP コマンド |
/opt/remi/php56/root/etc/php.ini | 設定ファイル |
/opt/remi/php56/root/usr/lib64/php/modules/ | PHP モジュール置き場 |
1. php コマンド
コマンドラインから PHP を実行する場合、スクリプトのパスの関係で、やっておいた方が無難な気がする。
・ php コマンドがない # php -v -bash: php: command not found ・ php56 コマンドから /usr/bin/php にシンボリックリンクを張る # whereis php56 php56: /usr/bin/php56 # ln -s /usr/bin/php56 /usr/bin/php ・ php バージョンの確認 (5.6 になっていれば OK) # php -v PHP 5.6.4 (cli) (built: Dec 17 2014 22:42:24) Copyright (c) 1997-2014 The PHP Group Zend Engine v2.6.0, Copyright (c) 1998-2014 Zend Technologies
2. php.ini
設定ファイルを /etc に置くと管理しやすくなる。
# ln -s /opt/remi/php56/root/etc/php.ini /etc/php.ini
3. php.ini 設定
タイムゾーンが設定されておらず、 PHP で扱う時刻が UTC になっているので、日本時間に変更する。
・ タイムゾーン設定 # vi /etc/php.ini ---------- date.timezone = Asia/Tokyo # service httpd reload
タイムゾーンが JST (日本時間。UTC に 9 時間プラスした時刻) になった。