francis at daoine.org
Fri Dec 2 21:29:25 UTC 2011
On Fri, Dec 02, 2011 at 08:46:49AM -0500, CGIMan wrote:
> I am having a hard time getting cgi (gitweb) to work.
> That's the relefvant part of my config:
nginx doesn't "do" cgi, but it does do fastcgi. So you are using a
separate program to map between the two...
> fastcgi_pass unix:/var/run/fcgiwrap.socket;
> fastcgi_param SCRIPT_FILENAME /usr/lib/cgi-bin/gitweb.cgi;
> That's nginx output:
> 2011/12/02 13:40:37 [error] 6046#0: *1 FastCGI sent in stderr: "Cannot
> get script name, is DOCUMENT_ROOT and SCRIPT_NAME set and is the script
> executable?" while reading response header from upstream,
...and it looks like that program cares about SCRIPT_NAME and
DOCUMENT_ROOT, and presumably not about SCRIPT_FILENAME.
So I'd guess that you want to remove the SCRIPT_FILENAME line, and replace it with
fastcgi_param SCRIPT_NAME gitweb.cgi;
fastcgi_param DOCUMENT_ROOT /usr/lib/cgi-bin;
Your fcgiwrap program may have more documentation on precisely what
parameters it expects and needs. Possibly there should be an extra "/",
either at the end of one param or at the start of the other.
Francis Daly francis at daoine.org
More information about the nginx