Plesk7.5.4が入っているサーバにPHP5をCGI版としてインストールする

大人の事情がいろいろあり、「PHP4で動いているPlesk7.5.4が入っているサーバにPHP5をCGI版としてインストールする」ということがしたい。
まあ、Plesk7.5.4はPHP5でも動くらしいんだけど、ホスティング会社が非推奨だし、あんまり無茶をやると怖いのでCGIとして動かせるようにしようという話。

PHP5にはlibxml2が必要らしいので、先にインストール。
現時点での最新版をいれちゃう。

cd /usr/local/src
ftp://xmlsoft.org/libxml2/libxml2-2.7.2.tar.gz
tar xvfz libxml2-2.7.2.tar.gz
cd libxml2-2.7.2/
./configure --prefix=/usr/local/libxml2
make
make install

続いてPHPをインストールしちゃう。
これも最新版の5.2.8を入れるか。

cd /usr/local/src
wget http://jp2.php.net/get/php-5.2.8.tar.gz/from/jp.php.net/mirror
tar xvfz php-5.2.8.tar.gz
cd php-5.2.8
./configure
--prefix=/usr/local/php5
--with-libxml-dir=/usr/local/libxml2/
--enable-force-cgi-redirect
--with-mysql
--with-png-dir=/usr
--with-png
--with-gd
--enable-gd-native-ttf
--with-iconv
--with-jpeg-dir=/usr
--with-jpeg
--with-zlib=/usr
--enable-mbstring
--enable--zend-multibyte
--with-ttf

make
make install

初めてのコンパイルオプションっつうことで必要最低限のものだけ入れてみたけど、まあ問題があるようなら再コンパイルすればいいか。
ちなみに再コンパイルをするときは、
make disclean
の後に
./configure ...
した方が良いらしい。
元ファイル以外は全部綺麗サッパリ削除してくれる。

いくつかエラーメッセージっぽいのが出ていたけど、一応最後まで通ったので次へ進む。
まあ、良いか悪いかというと・・・。

php.iniってのは自動で生成されないみたいだから、コピーが必要だぜ。
/usr/local/src/php-5.2.8/php.ini-dist /usr/local/php5/lib/php.ini
コピーをしたらいろいろ設定。
とりあえずこれもおいおい。

んで、今回は
・特定のディレクトリは.phpという拡張子のファイルはPHP5で、それ以外はPHP4で
・「#!/usr/local/php5/bin/php」みたいなのを、cgiみたいに入れるのは嫌だ
というルールでいきたいので、それの準備。

まずは、コンパイルした実行ファイルを/cgi-binへコピー。
PHP5.2.3移行はCGI版の実行ファイルがphp-cgiになったので注意が必要だ!
cp /usr/local/php5/bin/php-cgi path/to/cgi-bin/php5
オーナーもrootとかになっていると駄目っぽいので、変えよう。
chown hoge.hoge path/to/cgi-bin/php5

で、次に適用したいディレクトリに.htaccessファイルを置くー。
Action php5-script /cgi-bin/php5
AddHandler php5-script .php

Options +ExecCGI

ここで、.php5って拡張子だけPHP5にしたいとかだったら、こんな風に書き換えれば良いだけ。
Action php5-script /cgi-bin/php5
AddHandler php5-script .php5

Options +ExecCGI

はい、これでphpinfo()とかで確認して、ちゃんとバージョンが変わっていれば一先ずOK。
いやあ、最新版っつうのは気持ちが良いね。

コメント

アーカイブ

2012

  • 01
  • 02
  • 03
  • 04
  • 05
  • 06
  • 07
  • 08
  • 09
  • 10
  • 11
  • 12

2011

2010

2009

2008

2007

コンタクト

longkey1[at]gmail[dot]com