Accéder au contenu.
Menu Sympa

fr - Re: [sympa-fr] Pb de préfixe avec wws

Objet : Pour les administrateurs de serveurs de listes utilisant le logiciel Sympa

Archives de la liste

Chronologique Discussions  
  • From: Daniel Caillibaud <adresse@cachée>
  • To: adresse@cachée
  • Subject: Re: [sympa-fr] Pb de préfixe avec wws
  • Date: Thu, 26 Jul 2012 21:24:38 +0200

Le 25/07/12 à 23:50, Daniel Caillibaud <adresse@cachée> a écrit :
DC> Mon pb est que wws ne semble pas tenir compte de mon
DC>
DC> wwsympa_url https://mail.sesamath.net/listes
DC>
DC> car il annonce "ERREUR (listes) - Opération incorrecte", et tous les
liens pointent vers la
DC> racine.

Visiblement, ce n'est pas possible avec nginx d'avoir un prefixe (que le cgi
ajoute /prefixe/
à tous ses liens internes), en tout cas je n'y arrive pas malgré beaucoup
d'essais.

Mon pb est que je veux sympa en https, sur un serveur qui a d'autres applis
en https, je ne
peux donc pas avoir un server_name uniquement pour sympa (en fait avec nginx
on pourrait, mais
le certificat serait foireux, car on ne peut avoir qu'un certificat par IP).

Je suppose que le pb est lié aux paramètres passés au cgi qui diffèrent entre
le scriptAlias
d'apache et le fastcgi_pass de nginx.

Avec nginx, j'utilise un socket lancé par
spawn-fcgi -s /var/run/sympa/wwsympa-fcgi.sock -U www-data -u sympa -g sympa \
/usr/lib/cgi-bin/sympa/wwsympa.fcgi -P /var/run/sympa/wwsympa-fcgi.pid

À partir de ma config qui marche pour sympa à la racine du vhost, qui est :

location / {
gzip off;
root /usr/lib/cgi-bin/sympa;
fastcgi_pass unix:/var/run/sympa/wwsympa-fcgi.sock;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_param PATH_INFO $fastcgi_script_name;
fastcgi_param REQUEST_URI $request_uri;
fastcgi_param REMOTE_ADDR $remote_addr;
fastcgi_param SERVER_NAME $server_name;
fastcgi_param SCRIPT_FILENAME $document_root/wwsympa.fcgi;
}

j'ai essayé

1) remplacer
location /
par
location /listes
et
wwsympa_url https://mail.sesamath.net
par
wwsympa_url https://mail.sesamath.net/listes

ça donne
=> ERREUR (listes) - Opération incorrecte
=> tous les liens vers la racine du vhost (/home, /lists, ...)


2) idem 1), mais en essayant de virer le "listes" de ce qui est transmis au
cgi
if ( $request_uri ~ "^/listes(.*)$") {
set $requested_action $1;
}
fastcgi_param PATH_INFO $requested_action; # et pas
$fastcgi_script_name
fastcgi_param REQUEST_URI $requested_action; # et pas
$request_uri

=> j'ai plus le "ERREUR (listes) - Opération incorrecte" mais toujours les
liens vers la
racine :-/


3) J'ai aussi tenté de mettre sympa sur localhost et d'y aller avec du
proxy_pass depuis le
https.
Ça marche bien, enfin presque... les mails de demande de mot de passe
arrivent avec des url du
genre http://127.0.0.1:8000/help

4) Je vous épargne tous les autres essais, en désespoir de cause j'ai
configuré wwsympa
comme s'il était à la racine et je lui envoie toutes les urls qui ne
correspondent pas à des
fichiers / dossiers. Mais si le webmail qui est aussi à la racine (et doit le
rester) veut
aussi des urls dans ce genre il faudra filtrer à coup de regex.
Et si sympa construit des urls qui correspondent à des fichiers / dossiers
existants ça marchera
pas non plus.

Pour le moment ça marche avec

location / {
# root pour le webmail
try_files $uri $uri/ @sympa;
}

location @sympa {
rewrite /wws(/.*) /$1 break;
fastcgi_pass unix:/var/run/sympa/wwsympa-fcgi.sock;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_param PATH_INFO $fastcgi_script_name;
fastcgi_param REQUEST_URI $request_uri;
fastcgi_param REMOTE_ADDR $remote_addr;
fastcgi_param SERVER_NAME $server_name;
# le cgi enlève le s de https dans pas mal de liens si on lui donne
pas ça
fastcgi_param SSL_PROTOCOL $ssl_protocol;
# celui-là est indispensable pour avoir le s dans les urls des
mails envoyés
# (oubli de pass)
fastcgi_param HTTPS on;
}
avec
wwsympa_url https://mail.sesamath.net/wws

Donc pb pas réglé mais à peu près contourné.

--
Daniel

Le doute me ronge. Et si tout n'était qu'illusion ? Si rien n'existait ?
Dans ce cas, j'aurais payé ma moquette beaucoup trop cher.
Woody Allen




Archives gérées par MHonArc 2.6.19+.

Haut de le page