Error 502 : fcgiwrap ou nginx?

Bonjour,
J’ai tenté d’installer une interface web pour publier quelques documents. Comme je ne m’en sortais pas avec mercurial, je me suis tourné vers git et l’interface gitweb.

Comme vous pouvez le voir, ça ne fonctionne pas : [1]

nginx est configuré classiquement ainsi :

# Gitweb location /gitweb/ { root /usr/share/; index index.cgi; include fastcgi_params; gzip off; fastcgi_param SCRIPT_NAME $uri; fastcgi_pass unix:/var/run/fcgiwrap.socket; }
J’ai bien installé le paquet fcgiwrap au fait :wink:

Les lors de nginx indiquent :

2013/05/14 16:24:03 [error] 4058#0: *11 upstream prematurely closed FastCGI stdout while reading response header from upstream, client: 109.190.28.84, server: yeuxdelibad.net, request: "GET /gitweb/ HTTP/1.1", upstream: "fastcgi://unix:/var/run/fcgiwrap.socket:", host: "yeuxdelibad.net"

Où est mon erreur?
[1] : yeuxdelibad.net/gitweb

dans le fcgi. Problablement une dépendance manquante ou un truc du genre. Essaye d’activer plus de logs.

Alors en activant le debug de nginx :

2013/05/14 21:29:36 [debug] 8783#0: *1 posix_memalign: 0026AA40:4096 @16
2013/05/14 21:29:36 [debug] 8783#0: *1 http process request line
2013/05/14 21:29:36 [debug] 8783#0: *1 http request line: "GET /gitweb/ HTTP/1.1"
2013/05/14 21:29:36 [debug] 8783#0: *1 http uri: "/gitweb/"
2013/05/14 21:29:36 [debug] 8783#0: *1 http args: ""
2013/05/14 21:29:36 [debug] 8783#0: *1 http exten: ""
2013/05/14 21:29:36 [debug] 8783#0: *1 http process request header line
2013/05/14 21:29:36 [debug] 8783#0: *1 http header: "Host: yeuxdelibad.net"
2013/05/14 21:29:36 [debug] 8783#0: *1 http header: "Cache-Control: max-age=0"
2013/05/14 21:29:36 [debug] 8783#0: *1 http header: "User-Agent: Mozilla/5.0 (X11; U; Unix; fr-FR) AppleWebKit/537.15 (KHTML, like Gecko) Chrome/24.0.1295.0 Safari/537.15 Surf/0.6"
2013/05/14 21:29:36 [debug] 8783#0: *1 http header: "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"
2013/05/14 21:29:36 [debug] 8783#0: *1 http header: "Accept-Encoding: gzip, deflate"
2013/05/14 21:29:36 [debug] 8783#0: *1 http header: "Connection: keep-alive"
2013/05/14 21:29:36 [debug] 8783#0: *1 http header done
2013/05/14 21:29:36 [error] 8783#0: *1 upstream prematurely closed FastCGI stdout while reading response header from upstream, client: 109.190.28.84, server: yeuxdelibad.net, request: "GET /gitweb/ HTTP/1.1", upstream: "fastcgi://unix:/var/run/fcgiwrap.socket:", host: "yeuxdelibad.net"

Et maintenant, comment je debug fcgiwrap ?

aucune idée, mais c’est fcgi qui te pose probleme pas nginx :slightly_smiling:

Salut Thuban,

Qu’il y a t-il dans ton fastcgi_param ?
Dans le mien pour werc, j’avais dû changer :fastcgi_param SERVER_NAME $server_name;par :fastcgi_param SERVER_NAME $host;pour que ça fonctionne et écrire le chemin du script relatif à la racine de nginx :fastcgi_param SCRIPT_FILENAME werc/bin/werc.rc;

Dans mon nginx.conf, les lignes relatives à fastcgi sont : include fastcgi_params; fastcgi_pass localhost:9000;
et je lance spawn-fcgi comme ça depuis /etc/rc.local :/usr/local/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -u www -f /usr/local/sbin/fcgiwrap

Je sais que nos deux contextes sont différents mais ça donnera peut-être une piste.

Bon, le problème est résolu. Comment? Mystère. J’ai repris tout à zero, et même simplifié la configuration de nginx :

# Gitweb
	location /gitweb {
		root /usr/share/;
		index index.cgi;
		include fastcgi_params;
		gzip off;
		if ($uri ~ "/gitweb/index.cgi") {
			fastcgi_pass unix:/var/run/fcgiwrap.socket;
		}

	}

Merci de m’avoir aidé!