CentOS5.1 上のPHPでCGIを書く

phpコマンドには、CLIバージョンとCGIバージョンが存在していることを発見した。
何てわかりにくい言語なんだろう、phpは。
ということで、CentOS5.1にデフォルトでついてくるphpCGIを書く場合にはまった点をメモ。

/etc/php.ini を以下のように変更する。

cgi.force_redirect = 0

以下のように、php ではなく、php-cgi を使う。

#!/usr/bin/php-cgi
<?php

//ここに書く

?>

CentOS5はデフォルトで phpcli バージョンになっている。

# php -v
PHP 5.1.6 (cli) (built: Sep 20 2007 10:16:10)
Copyright (c) 1997-2006 The PHP Group
Zend Engine v2.1.0, Copyright (c) 1998-2006 Zend Technologies

php-cgicgi バージョンになっている。

# php-cgi -v
PHP 5.1.6 (cgi-fcgi) (built: Sep 20 2007 10:06:48)
Copyright (c) 1997-2006 The PHP Group
Zend Engine v2.1.0, Copyright (c) 1998-2006 Zend Technologies

またちょっとphpが嫌いになった。