Fedora Core 6 PHP5.2系



前書き (執筆:2007/10/08)

ここではXOOPS(XOOPS Cube Legacy 2.1)で利用可能になったPHP5をインストールしています。
ご自分の環境に合わせてPHP5、PHP4を選択してインストールしてください。

XOOPS Cube 2.0.xx系を利用する方はPHP4をお勧めします。
またXOOPS Cube Legacy 2.1でも使用するモジュールによってPHP5に対応していないものがありますので事前に確認してください。
特に制限がなければPHP5のインストールをお勧めします。

ソースファイルの入手

最新のソースファイル(tar.gz.)を取得します。

$ wget http://jp.php.net/get/php-5.2.4.tar.gz/from/jp2.php.net/mirror


下記のように処理されます。

--10:28:52--  http://jp.php.net/get/php-5.2.4.tar.gz/from/jp2.php.net/mirror
jp.php.net をDNSに問いあわせています... 61.195.146.164
jp.php.net|61.195.146.164|:80 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 302 Found
場所: http://jp2.php.net/distributions/php-5.2.4.tar.gz [続く]
--10:28:52--  http://jp2.php.net/distributions/php-5.2.4.tar.gz
jp2.php.net をDNSに問いあわせています... 219.94.145.73
jp2.php.net|219.94.145.73|:80 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 9705468 (9.3M) [application/x-tar]
Saving to: `php-5.2.4.tar.gz'

100%[=========================================>] 9,705,468   1.08M/s   in 8.6s

10:29:01 (1.07 MB/s) - `php-5.2.4.tar.gz' を保存しました [9705468/9705468]


ソースファイルの展開

取得したソースファイルを展開します。

$ tar xzf php-5.2.4.tar.gz


php-5.2.4 という名前のディレクトリが作成され、その配下に展開(解凍)されます。
ディレクトリ下に移動します。

$ cd php-5.2.4


コンフィグ・コンパイル・インストール

次にコンフィグを行いますが、自分の環境、作成したいWeb環境に応じて様々なオプションを設定してください。
オプションについては公式サイトを参考にするといいでしょう。
PHP: Configure オプション - Manual

ここでは

  • PostgreSQL利用宣言
  • MySQL利用宣言
  • mbstring使用
  • mcrypt使用
  • グラフィックライブラリ GD 使用
  • 画像フォーマット使用(PNG・JPEG・zlib)


$ ./configure \
  --with-pgsql \
  --with-mysql=/usr/local/mysql \
  --with-apxs2=/usr/local/apache2/bin/apxs \
  --enable-mbstring \
  --with-mcrypt \
  --with-openssl \
  --with-gd \
  --with-png-dir=/usr/lib \
  --with-zlib \
  --with-jpeg-dir=/usr/lib \
  --enable-sockets


MySQLをRPMでインストールした場合は下記の通り

$ ./configure \
  --with-pgsql \
  --with-mysql \
  --with-apxs2=/usr/local/apache2/bin/apxs \
  --enable-mbstring \
  --with-mcrypt \
  --with-openssl \
  --with-gd \
  --with-png-dir=/usr/lib \
  --with-zlib \
  --with-jpeg-dir=/usr/lib \
  --enable-sockets


mcrypt(可逆暗号処理)を有効にする場合は事前に libmcrypt をインストールしておく必要があります。
http://mcrypt.sourceforge.net/ から最新版を入手して ./configure 、make、make install でインストールしてください。

コンフィグを開始すると下記のようになります。

creating cache ./config.cache
checking for Cygwin environment... no
checking for mingw32 environment... no
checking for egrep... grep -E
checking for a sed that does not truncate output... /bin/sed
checking host system type... i686-pc-linux-gnu
checking target system type... i686-pc-linux-gnu
checking for gcc... gcc
  ・
  ・
+--------------------------------------------------------------------+
| License:                                                           |
| This software is subject to the PHP License, available in this     |
| distribution in the file LICENSE.  By continuing this installation |
| process, you are bound by the terms of this license agreement.     |
| If you do not agree with the terms of this license, you must abort |
| the installation process at this point.                            |
+--------------------------------------------------------------------+

Thank you for using PHP.


エラー表示がなく、正常にconfigureが終了したら、コンパイル(make)を行います。
(付加したオプション内容によって多少時間がかかります。)

$ make


エラー表示がなく、以下のように Build complete. が表示されればコンパイル終了です。

  ・
  ・
Build complete.


インストールを開始するにあたりスーパーユーザーになり、展開したディレクトリに移動します。 ここでは参考として 展開したディレクトリを /home/userDir/php-4.4.7 としています。

$su - 
Password: (パスワード入力)
# cd /home/userDir/php-5.2.4
# make install


下記のように処理されます。

Installing PHP SAPI module:       apache2handler
  ・
  ・

エラー表示が出なければインストールは終了です。

設定ファイル php.ini の編集

php.iniをソースディレクトリからコピーします。

# cp /home/userDir/php-5.2.4/php.ini-dist /usr/local/lib/php.ini.

必要な箇所を編集してください。
運用上のセキュリティー問題を回避するための設定も必要になります。
また、文字コード変換(input、output、内部エンコーディング)の設定、その他いろいろな設定が必要です。
ここでは、長くなるため割愛します。検索サイトで調べればたくさんの情報を見つけることが出来ます。

以前にPHP4をインストールしていてPHP5にアップグレードで、PHP4のphp.iniを引き継いで使用する場合、下記の修正を忘れずに行ってください。

memory_limit = 8M
  ↓  ↓
memory_limit = 16M

とくにXOOPSをはじめとするメモリ容量を多く使用するPHPプログラムを利用する場合、この設定を変更していないと正常に動作しない場合があります。

apache設定ファイルの編集

.phpの拡張子をPHPで処理できるように編集します。

# vi /usr/local/apache2/conf/httpd.conf

下記を追記します。

AddType application/x-httpd-php         .php 


PHP4のモジュール組み込みの宣言がされているか確認します。

LoadModule php4_module        modules/libphp5.so

この行が記述されているはずです。
なければ追記しておきます。

以前に PHP4 を利用していた方は、下記の2行を削除またはコメントアウトしてください。
新規にPHP5用のモジュール読み込みが記述されているはずです。

LoadModule php4_module        modules/libphp4.so
LoadFile /usr/local/pgsql/lib/libpq.so
  ↓  ↓
# LoadModule php4_module        modules/libphp4.so
# LoadFile /usr/local/pgsql/lib/libpq.so


apache再起動

ここまでできれば設定の完了です。
apacheを起動していれば再起動します。
まだ起動していなければ起動させてください。

再起動の場合

# /etc/rc.d/init.d/httpd restart


httpd を停止中:                                            [  OK  ]
httpd を起動中:                                            [  OK  ]



起動の場合

# /etc/rc.d/init.d/httpd start


httpd を起動中:                                            [  OK  ]


PHP起動確認

apacheのドキュメントディレクトリにテスト用のファイルを設置します。

$ vi phpinfo.php

ファイルの内容は下記のとおりです。

<? phpinfo(); ?>

ファイルの名前は適当につけてかまいません。(ここでは phpinfo.php としています。)

ブラウザから設置したURLへアクセスし PHPの設定情報のページが表示されれば動作OKです。

確認が終わったら削除してください。
サーバー情報、apache、PHPの設定情報が分かってしまうため、第三者へ攻撃の情報を与えてしまうことになります。
また 不正アクセスを使った攻撃 にもつながる恐れがあります。



Last-modified: 2015-04-23 (木) 15:23:13 (946d)