nginx e mailman: encaminhar para listinfo por padrão

0

Eu luto agora um pouco com o problema de fazer o mailman e o nginx rodarem. Tudo funciona bem, mas se o usuário vir apenas o domínio, recebo um erro HTTP 502.

Como posso dizer que o nginx deve usar / listinfo como o local padrão? Eu não posso especificá-lo via try_files $uri /listinfo na seção location / , porque então todo site é encaminhado para / listinfo. De alguma forma isso não funciona bem com cgis ...

Esta é minha configuração atual:

server {
    listen [::]:80;
    root /usr/lib/cgi-bin/mailman/;

    location = /mailman/listinfo {
        rewrite ^ /listinfo permanent;
    }

    location / {
        fastcgi_split_path_info (^/[^/]*)(.*)$;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param PATH_INFO $fastcgi_path_info;
        include /etc/nginx/fastcgi_params;
        fastcgi_pass  unix:/var/run/fcgiwrap.socket;
    }
    location /images/mailman {
        alias /usr/share/images/mailman;
    }
    location /pipermail {
        alias /var/lib/mailman/archives/public;
        autoindex on;
    }
}

Posso definir um local para corresponder a um URL como http://example.com/ (sem nenhum parâmetro especificado)?

    
por reox 13.01.2015 / 19:20

1 resposta

0

Corrigi-o adicionando uma regra que corresponde apenas a / :

location = / { 
    rewrite ^ /listinfo permanent;
}   

se alguém tiver uma solução melhor, poste-a!

    
por 15.01.2015 / 21:18