Lighttpd CGI 下载 .py 而不是运行它

Lighttpd CGI 下载 .py 而不是运行它

我在lighttpd中有两个CGI测试脚本。

当我打开 Bash http://host/cgi-bin/test.shURL 时,我从脚本获得了有效的响应。

但是当我打开 Python 时,http://host/cgi-bin/test.py文件是在浏览器中下载的,而不是由 CGI 模块运行。

如何让 Bash 和 Python 在 CGI 中工作?

我在 lighttpd.conf 中的 CGI 配置:

server.modules              = (
                                "mod_access",
                                "mod_cgi",
                                "mod_accesslog" )

cgi.assign = ( ".sh" => "/bin/bash", 
               ".py" => "/usr/bin/python" )

$HTTP["url"] =~ "^/cgi-bin/" {
    cgi.assign = (  ".sh" => "/bin/bash", 
                    ".py" => "/usr/bin/python" )
}

两个文件具有相同的权限,并按预期从命令行执行。

$ ls -l /www/pages/cgi-bin/
total 8
-rwxr-xr-x 1 root root 96 May  8 12:27 test.py
-rwxr-xr-x 1 root root 19 May  8 12:19 test.sh

$ cat test.sh         
#!/bin/bash                                                 
echo Hi from Bash                                           
                                                            
$ cat test.py         
#!/usr/bin/python                                           
print "Hi from Python"                                      
$                     

相关内容