さくらVPS(CentOS 6.2)でソースからPHP5.4.10をインストール

投稿者: | 2013/02/18

前回はyumでPHPをインストールしました。
yumからだと簡単にインストールできて便利ですが、拡張モジュールを追加する場合はソースからインストールした方が便利です。
そこで今回はPHP5.4.10をソースからインストールしてみます1

目標

  • PHP5.4.10をソースからインストールする

サーバ環境

  • CentOS 6.4 (さくらVPS)

インストール

必要なパッケージをインストールする

yumパッケージリストを参考にインストールします。

ソースのダウンロード、解凍

–trust-server-names オプションを追加することでミラーサイトのファイルをダウンロードすることができます2

最新版はhttp://www.php.net/downloads.phpから探してください。

インストール

configureオプションについては、phpのconfigureオプションを参考にしてください、configureオプションはPHPに組み込みたいモジュールに応じて追加します。
もし、インストール後にモジュールを追加したい場合は、もう一度コンパイルし直してインストールしてください。

ここで足りないパッケージがあったり何かしらのエラーが生じると、configure実行途中で止まるのでエラー内容をググって対処します。
下記のようなメッセージが表示されればOKです。

configureが通ったら、makeコマンドを実行します。

make testも無事通過すれば最後にmake installしてインストール完了です。

設定

PHPの設定はphp.iniというファイルで行います。

php.iniの設置

iniファイルを設置します。
設置場所が分からない場合は、以下のコマンドで調べることができます。

今回はiniファイルを/usr/local/php-5.4.10/lib/に設置します3
php.iniはインストール時に2種類用意されています。

  • php.ini-production ・・・ 本番環境用
  • php.ini-development ・・・ 開発用

開発用のphp.ini(php.ini-development)はエラーの内容をブラウザに表示させたりデバッグ等ができたりするため、サーバを公開している場合は本番環境のphp.ini(php.ini-production)にした方が良いでしょう。
もし、開発途中でどうしても途中でphpのエラーやデバッグ情報をブラウザに表示させたい場合は、php.iniの内容を一時的に変更するか、ini_set()を使います。

php.iniの設定

今回はとりあえずタイムゾーンだけ設定します。

インストール確認

以下のように表示されていればインストールは成功しています。

上記のようなエラーが表示された場合は、/etc/php.d以下にxxxx.soに対応したiniファイルがあるので編集してコメントアウトすれば良いです。コメントアウトしてもそのモジュールは問題なく使えるみたいです。

Webサーバ(Apacheやnginx)を再起動して再度確認します。

Warningが表示されていなければ完了です。

ApacheとPHPの連携

ブラウザ上でPHPを動かすには、ApacheとPHPを連携する必要があります。

Apacheを再起動します。

ドキュメントルート(デフォルト:/usr/local/apache2/htdocs)に以下のようなファイル(phpinfo.php)を設置し、ブラウザからhttp://localhost/phpinfo.php にアクセスしてPHP情報が見れれば正常に動作しています。
phpinfo()インストールしているPHPの情報が見られてしまうため、確認後、phpinfo.phpはすぐに削除してください。

  1. PHPを複数バージョンインストールすることもできますので別途記事で紹介する予定です []
  2. こちらの記事を参照 []
  3. php.iniの設置場所は–with-config-file-pathオプションで変更可能です []

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*