あーかいぶすハイディフィニション

ここはもう更新しとらんのじゃ

CentOS5.2へPHP4インストール

yumでApache2と、phpをインストールしたのですが、phpが5なのを失念していて動かないので俺の怒りが有頂天に(略)。

とりあえずyumでインストールしたphpはremoveします。そして、自分のほめディレクトリあありにでもphp4のパッケージを落としておきましょう。

php4をインストールする

$ tar -zxvf php-4.4.9.tar.gz; cd php-4.4.9
$ ./configure --with-apxs2=/usr/bin/apxs --enable-mbstring --with-mysql --with-gd --with-jpeg=/usr/lib --with-png=/usr/lib
$ make
# make install

これでおk、こうするとyumで導入した既存のhttpd.confにLoadModuleも追記してくれる。ただ問題があって。

AddType application/x-httpd-php .phtml .php

上記のAddType宣言は追加してくれない中途半端さなので、自分で追記してください。
どこか適当な所で構わないんですが、まとまりがいいと探しやすいので、他のAddType宣言の最後尾にでも追記するといいでしょうな。

起動確認

上記設定を行った後、httpdを再起動します。後は適当にDocumentRootに動作確認用のphpinfoファイルでも設置しましょう。

<?php
 phpinfo();
?>

これでおk、ブラウザからアクセスして各種ステータスが表示されれば無事動作しています。もしphpファイルの中のコードがそのまま表示された場合、AddTypeの宣言を忘れている可能性があるのでhttpd.conf等設定ファイルの中身をgrepするなりして確認してくださいね。

configureオプションについて

phpのconfigureオプションは結構多いんですが、とりあえず今回のconfigureオプションはXOOPS2.0.16a-JPを動かす目的で最小限記述しました。自分の環境に合わせて色々追加してもらえばと思いますが、簡単なPHPのプログラム動作等であれば、上記のconfigureオプションで流用できると思われます。あんまりオプション追加しすぎても大変だしね!


ちなみにconfigureオプションを追加したくなった場合は以下のようにして再度makeしてね。

再度makeする

$ cd php-4.4.9
$ make clean
$ ./configure --with-apxs2=/usr/bin/apxs --enable-mbstring --with-mysql --with-pgsql --with-gd --with-jpeg=/usr/lib --with-png=/usr/lib
(--with-pgsqlを追加したよ!)
$ make
# make install

これでおk、make cleanは作成済みのMakefileを削除してくれる。こうやっとかないと、以前作成したMakefileのままの可能性があるので注意だお。

それにしてもなんでこんな変態な環境の構築ばっかに縁があるんだろう…。

PoundのLogLevel設定

man poundより

LogLevel value
Specify  the  logging  level: 0 for no logging,
1 (default) for regular logging,
2 for extended logging (show chosen backend server as well),
3 for Apache-like  for-mat  (Combined Log Format with Virtual Host),
4 (same as 3 but without the virtual host information) and
5 (same as 4 but with  information  about  the  Service  and BackEnd used).
This value can be overridden for specific listeners.

分かる人はこんなおぽんちな記事見ないと思いますが、LogLevelは0〜5の6段階で、何も指定しないとLogLevelは1になるもよう。各Levelの動作のおぽんちな解釈は以下。

  1. LogLevel 0: なんもでない
  2. LogLevel 1: 基本的な情報のみ
  3. LogLevel 2: L1をちみっと拡張した情報
  4. LogLevel 3: Apache風のログ、VirtualHost情報付き
  5. LogLevel 4: L3からVirtualHostの情報を抜いたもの
  6. LogLevel 5: とにかく一杯でる

Production環境なら1でいいと思われますが、何か起こったときの事を考えると、L3で出力して、日毎もしくは週毎でbz2圧縮でも行う方がよさそうですね。