我有NGINX愉快地工作与PHP FPM所有tickety-boo。
我正在尝试添加一些Perl页面。 我有我的默认网站configuration;
location ~ \.pl$ { gzip off; include fastcgi_params; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.pl; fastcgi_param SCRIPT_FILENAME /usr/share/nginx/www/$fastcgi_script_name; }
在我的浏览器中浏览perl页面(下面的例子)只是显示源代码。 就好像代码没有被传递给FPM,或者它没有执行它,只是将它传递回来。
我不知道该怎么办 我不知道如何解决这个问题。 NGINX中没有error.log或php5-fpm.log。
test.pl;
#!/usr/bin/perl print "Content-type:text/html\n\n"; print <<EndOfHTML; <html><head><title>Perl Environment Variables</title></head> <body> <h1>Perl Environment Variables</h1> EndOfHTML foreach $key (sort(keys %ENV)) { print "$key = $ENV{$key}<br>\n"; } print "</body></html>";
为什么这个工作? PHP-FPM只能处理PHP,呃!
但是我希望能够将Perl脚本传递给FPM,并将它们传递给perl。 我发现这个页面(下面的链接)回答了我的问题,并很好地清除了事情。
为什么要把一个Perl脚本传给FPM,然后把它传递给Perl,当你可以通过一个包装器直接将它传递给Perl! :d