有人知道如何配置lighttpd来处理普通的CGI可执行文件吗?我编译了一个测试程序(test.cgi),并将其放入$HOME/public_html/cgi-bin中。我还用lighty-enable-mod cgi
启用了CGI模块,并重新启动了web服务器。尽管如此,在请求时http://localhost/~august/cgi-bin/test.cgi程序没有运行,而是被视为一个静态文件。这是我的测试程序:
#include <stdio.h>
int main(void)
{
printf("Content-type: text/plainnn");
puts("test...");
return 0;
}
默认的CGI配置如下所示:
$HTTP["url"] =~ "^/cgi-bin/" {
cgi.assign = ( "" => "" )
}
即,只执行文档根目录下的cgi-bin目录中的二进制文件。要启用每个用户的cgi目录,请添加
$HTTP["url"] =~ "^(/~[^/]+)?/cgi-bin/" {
cgi.assign = ("" => "")
}
到lighttpd配置文件。