2007-5-14 15:38
nukq
Lighttpd下如何同时使用不同版本的php
同一web服务器上使用不同版本php,这种需求虽然不多,但绝非用不到
比如某个php文件需要一个特殊扩展,而该扩展需要特定的php版本.
下面讲一下这个如何在lighttpd下办到,以根据url规则为例:
在lighttpd.conf文件中加入如下配置:
[code]$HTTP["url"] =~ "^/webadmin/" {
fastcgi.server = ( ".php" =>
(( "socket" => "/tmp/php-fastcgi.socket.2",
"bin-path" => "/another-php-version-path/php-cgi",
"min-procs" => 1,
"max-procs" => 1,
"max-load-per-proc" => 4,
"bin-environment" => (
"PHP_FCGI_CHILDREN" => "16",
"PHP_FCGI_MAX_REQUESTS" => "10000" ),
"bin-copy-environment" => (
"PATH", "SHELL", "USER" ),
"broken-scriptfilename" => "enable",
"idle-timeout" => 20
))
)
}[/code]
解释一下:
$HTTP["url"] =~ "^/webadmin/" 表示以 /webadmin/开头的所有url 都会满足条件进入另一个fastcgi后端程序.
( =~ 是正则匹配, 其他还有 == != !~ 的比较模式, 可以看ligtthpd的文档 )
这里要主意一点, socket那一项不能跟已有的其他fastcgi配置相同,
"socket" => "/tmp/php-fastcgi.socket[b].2[/b]"
"bin-path" => 为你另一版本的php-cgi所在路径