我正在建立一个使用nginx的网站,需要让它运行一些perl程序,所以我安装了FastCGI并完成了所有设置。我将此添加到我的网站配置中:
location ~ \.pl$ {
gzip off;
include /etc/nginx/fastcgi_params;
fastcgi_pass unix:/var/run/fcgiwrap.socket;
fastcgi_index index.pl;
fastcgi_param SCRIPT_FILENAME /[...]/www$fastcgi_script_name;
fastcgi_param QUERY_STRING $query_string;
}
然后我写了一个test.pl程序:
#!/usr/bin/perl
print "Content-type:text/html\n\n";
print "Body here ";
print $#ARGV;
我的结果是“Body here -1”。所以perl程序正确运行。现在我唯一的问题是,对于我的生活,我找不到如何读取POST数据。如果这很棘手,我也无法找到如何读取GET URL参数。对我来说,这两个都足够了。
答案 0 :(得分:1)
这比看起来简单得多。下面是我使用的perl脚本。
#!/usr/bin/perl
use CGI;
print "Content-type:text/html\n\n";
my $q = CGI->new;
print "Your name is";
print $q->param("name");
就是这样。它根本不是特定于nginx的。