Manque de places WS2P sur le réseau Ğ1!

le proxy pass tu ne lui a pas rajouté /admin dedans ?

refais voir ta config stp

location /admin {

    auth_basic "Authentification requise";
    auth_basic_user_file conf.d/duniterpwd;
    proxy_set_header        X-Real-IP       $remote_addr;
    proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header        Host            $host;
    proxy_set_header        X-NgninX-Proxy  true;
    proxy_pass http://localhost:9220;
    proxy_redirect          off;

                }

merci @elois et @lciviero , je fouillerai dans la doc nginx pour voir ce qui cloche.
pour l’instant je dois filer …

Ca marche, tu me diras ce qu’était le problème, ca doit pas être grand chose.

Bonne journée à toi !

Est-il possible d’utiliser un path specifique pour l’interface d’admin ? J’avais tenté le coup quand j’ai mis mon noeud en place il y a quelques semaines, mais sans succès. Du coup j’utilise un sous domaine dédié faute de mieux.

Oui en passant par un proxy (ne me demande pas la conf nginx lol). Même principe que ce que tu as fais avec le sous domaine.

Perso, je fais comme toi, tous mes services sont accessibles via des sous domaines et c’est mon Synology qui redirige tout ça.

Si quelqu’un a un exemple de conf nginx ça m’intéresse. Parce que juste en définissant un truc de ce genre ça ne marchait pas du tout :

location /admin {
    proxy_pass http://mon_backend_sur_port_9220;
}

Pourtant c’est ce qu’on retrouve dans la doc.
https://docs.nginx.com/nginx/admin-guide/web-server/reverse-proxy/

location /some/path/ {
proxy_pass http://www.example.com/link/;
}

Peut être une autre directive qui pose soucis.

Je m’en installe un la je vais tester. Je te dis

1 Like

Ce que je me dis c’est que la conf nginx ne fait pas tout. Il peut être nécessaire que le serveur ait connaissance de ce chemin pour l’inclure dans ses liens.

C’est bien ça. En examinant les requêtes réseau via Firebug, j’ai pu identifier les autres chemins. Cette conf semble fonctionner :

location /admin/ {
  proxy_pass http://backend_9220/;
}
location /images/ {
  proxy_pass http://backend_9220/images/;
}
location /font/ {
  proxy_pass http://backend_9220/font/;
}
location /fonts/ {
  proxy_pass http://backend_9220/fonts/;
}
location /webmin/ {
  proxy_pass http://backend_9220/webmin/;
}

il faut rajouter dans /etc/nginx/proxy_params

proxy_redirect off;

et après dans la configuration du site :

location /test/ {
proxy_pass https://www.google.com/;
}

Sinon ca fait un redirect et pas un proxy. Je viens de tester ca fonctionne. Ca m’affiche bien google, par contre probablement des bidouilles à faire car j’ai pas les images

D’où mon problème héhé. Bien vu.

Du coup une redir via un sous domaine c’est quand même moins galère :sweat_smile:

Oui, et ça permet de gérer l’authentification plus proprement.

Avec une regex et une directive rewrite pour gérer le chemin /admin/ on peut tout exprimer en un seul bloc location :

location ~ ^/(admin|fonts?|images|webmin)/ {
  rewrite ^/admin/(.*)$ /$1 break;
  proxy_pass http://backend_9220;
}
3 Likes

Merci @Pini, tu maitrises nginx bien mieux que moi. Ça te dirait de faire une MR pour ajouter une section « admin API » à la doc de configuration ?

Pourquoi pas. Mais je pense qu’il faudrait plutôt une page dédiée à la configuration derrière un reverse proxy.

Oui c’est une bonne idée, si vous voulez la créer et la complétée avec @lciviero et qui veut, je reviewrai et mergerai :slight_smile:

Ça pourrait être un fichier nommé reverse-proxy.md dans le dossier doc/use. (À référencer alors dans doc/use/index.md :wink: )

Yes, je peux faire la config pour apache.

@Pini tu veux t’organiser comment ?

Pas trop d’idée honnêtement. j’ai créé un nouveau sujet dédié pour ne pas polluer ce thread plus loin :slight_smile:

2 Likes

Joli !!!
ça marche comme sur des roulettes, j’y ai ajouté l’authentification et ça roule :slight_smile:

2 Likes