Nginx fastcgi divide informações de caminho com o mailman

3

Eu estou usando o mailman com o nginx para obter sua interface web como minha configuração nginx:

location /cgi-bin/mailman {
           root /usr/lib/;
           fastcgi_split_path_info (/cgi-bin/mailman[^/]*)/(.*)$;
           include /etc/nginx/fastcgi_params;
           fastcgi_param SCRIPT_FILENAME $fastcgi_script_name;
           fastcgi_param PATH_INFO $fastcgi_path_info;
           fastcgi_param PATH_TRANSLATED $fastcgi_path_info;
           fastcgi_intercept_errors on;
           fastcgi_pass unix:/var/run/fcgiwrap.socket;
    }

parece funcionar bem quando eu chamo mydomain.com/cgi-bin/mailman/listinfo , mas quando peço algo como: mydomain.com/cgi-bin/mailman/listinfo/mylist i recebo 403 e no log de erros nginx:

FastCGI sent in stderr: "Cannot chdir to script directory (/usr/lib/cgi-bin/mailman/listinfo)" while reading response header from upstream

Eu tentei todos os regex disponíveis para que funcione, mas ainda dá 403 qualquer ajuda ou qualquer pista para que funcione.

    
por eyadof 10.11.2013 / 18:53

1 resposta

1

Eu tive o mesmo problema. Eu acho uma solução em algum lugar: apenas comente o

fastcgi_param  SCRIPT_FILENAME   $request_filename;

linha em /etc/nginx/fastcgi_params . Funciona, mas acho melhor não comentar essa linha, basta trocar a ordem de incluir este arquivo e definir seu próprio SCRIPT_FILENAME:

location /cgi-bin/mailman {
           root /usr/lib/;
           fastcgi_split_path_info (/cgi-bin/mailman[^/]*)/(.*)$;
           fastcgi_param SCRIPT_FILENAME $fastcgi_script_name;
           include /etc/nginx/fastcgi_params;
           fastcgi_param PATH_INFO $fastcgi_path_info;
           fastcgi_param PATH_TRANSLATED $fastcgi_path_info;
           fastcgi_intercept_errors on;
           fastcgi_pass unix:/var/run/fcgiwrap.socket; }

Agora funciona para mim.

    
por 07.03.2015 / 21:52

Tags