パンダのメモ帳

技術系のネタをゆるゆると

CentOS 5.4にPHPを導入する

Apache をインストール済みの CentOS 5.4 に PHP を導入し、PHPによるWEBアプリケーションが動作するようにする。

1. 要件

今回の要件は以下の通り。

  • ソースからではなく、yumからインストールを行う。
  • CentOS公式のパッケージはバージョンが古いが、今回は特に気にしない。
  • 以下のモジュールを同時にインストールする。

2. インストール

要件通り、yum でインストールを行う。

[root@localhost ~]# yum -y install php php-gd php-mysql php-mbstring

3. 設定

PHPの設定ファイル(/etc/php.ini)を編集する。以下に特に確認・変更を行うポイントのみを示す。なお、これらの変更は必須ではないので、デフォルトのまま使っても基本的には問題ない。

項目 変更前 変更後 理由
memory_limit 32M 16M デフォルトの16MBのままだと一部アプリケーションが動作しない場合がある。少し余裕を持たせて32Mに変更する。
log_errors On On エラーをログに記録するか否か。Onであることを確認する。
error_reporting E_ALL E_ALL & ~E_NOTICE デフォルトだと、利用するWEBアプリケーションによっては大量のログが記録されてしまう。実行に影響ないエラーは記録しないようにする。
html_errors Off コメントアウトされているので解除する。PHPのエラー表示がHTMLでうれしかった試しがない。
error_log /var/log/php.log 新しく追加するか、コメントアウトを解除して書き換える。エラーログの記録先の指定。
register_globals Off Off この設定をOnにすることはセキュリティホールを自分で作ることと同義。Offであることを確認する。
magic_quotes_gpc Off Off この設定をOnにすると、一部のWEBアプリケーションが動作しなくなる。Offであることを確認する。
date.timezone Asia/Tokyo この項目を設定しないと、一部のWEBアプリケーションが動作しなくなる。正しく設定する。

4. Apache の再起動

Apache+PHP の場合、Apacheを再起動することでPHPモジュールがロードされる。気になる人は /etc/httpd/conf.d/php.conf が作成されていることを確認しよう。確認したら、以下のコマンドで Apache を再起動。

[root@localhost ~]# service httpd graceful

5. 動作確認

試しに、どこか適当なところに下記のようなファイルを作成する。

<?php phpinfo(); ?>

アクセスすると、PHPに関する情報が確認できるページが表示される。設定内容や読み込まれているモジュールの情報が確認できるので、ここで一通り確認しよう。確認が終わったら同ファイルは削除した方がよい。