PHP をインストールします。
PHP の本体そのものは単に yum install php するだけですが、他にも使いそうなものを入れておきます。
# yum -y install php # yum -y install php-mbstring # yum -y install php-xml # yum -y install php-mysql # yum -y install php-gd
ImageMagick というのは画像ファイルの変換や加工を行うことが出来るツールです。これ自体は CUI のツールですが、いろいろな言語から呼び出すライブラリとしても使えます。(ということらしいです。私もよくわかってません)
PHP から ImageMagick を使いたいという事情があったのでここで入れておきます。(もちろん、必要ない場合は入れる必要なし)
# yum -y install libjpeg-devel libpng-devel # yum -y install ImageMagick ImageMagick-devel
ImageMagick 自体はこれだけで入ります。ただこれだけだと PHP からは使えないようなので、ImageMagick と PHP とを橋渡しする imagick を入れてやります。
(そういや、自分の控えをコピー&ペーストして記事を書いているので yum を複数回に分けて実行していますが、ずらずらと並べて 1回の yum でインストールしても意味は同じなんだと思います)
imagick は yum では無く pecl で入れるそうです。この時点ではまだ pecl が使えるようになっていないので、yum で以下のものを入れてやります。
# yum -y install php-pear # yum -y install php-devel # yum -y install httpd-devel
正直、この辺まったくわかってません。完全に見よう見まねです。
これで pecl が使えるようになったので imagick を入れてやります。
# pecl install imagick
いろいろ表示されますが、その中に WARNING: channel "pecl.php.net" has updated its protocols, use "pecl channel-update pecl.php.net" to update というメッセージがありました。言われたとおりに
# pecl channel-update pecl.php.net
と実行。また、「cc も無いし gcc も無い」というようなエラーメッセージも出ていたので
# yum -y install gcc-c++
として gcc を入れました。
再び
# pecl install imagick
としてやるとようやくビルドに成功し、無事インストールできたようです。
最後に /etc/php.ini に "extension=imagick.so" を追加して imagick を有効化してやります。これは /etc/php.d/imagick.ini ファイルを作ってそっちに "extension=imagick.so" と書いてやるという方法もあるそうです。
最後に apache を再起動してやります。
service httpd restart
PHP にちゃんと認識されているかは php -i として imagick module が enabled になっているか確認すればいいようです。php -i だとたくさん書かれるので
php -i | grep imagick
なんてするといいようです。もちろん、<?php phpinfo(); ?> なんて中身の php ファイルを作ってブラウザーで表示してみても確認できます。
この状態でしばらく PHP を使っていたら httpd の error_log に「timezone の設定が無いぞ」みたいな警告?がたくさん出ていました。そこで /etc/php.ini の date.timezone を
date.timezone = Asia/Tokyo
としてやりました。とりあえず、警告も消えてうまくいっているようです。