Il devrait y avoir un moyen de configurer un préfixe d'URL lorsque l'interface Web se trouve derrière un proxy. Cela a été demandé plusieurs fois sur la liste de diffusion.
Lié au numéro 28
Bonjour @mnaberez , y a-t-il une mise à jour à ce sujet ?
@mmoya On dirait qu'il est toujours sur la liste TODO.txt . L'interface Web en général pourrait nécessiter un peu de travail. Des patchs seraient les bienvenus.
Réouverture puisque cela s'est reproduit. Connexe : #495
Je mets à jour le code pour prendre en charge cela. Je sais qu'il existe d'autres implémentations (#495 et #28) mais ce que je propose est similaire à #372. Une fois que j'ai terminé, je vais créer un PR.
btw : Cette configuration nginx fonctionne pour moi très bien :
location /supervisor {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
# hack the host https://github.com/Supervisor/supervisor/issues/251
proxy_set_header Host $http_host/supervisor/index.html;
proxy_redirect off;
rewrite ^/supervisor(.*)$ /$1 break;
proxy_pass http://127.0.0.1:8999/;
}
@yarikdot Cela ne fonctionne pas pour moi, du moins sur v3.3.3, car il essaie de charger http://MY_HOST/stylesheets/supervisor.css qui est un 404. Mais même http://MY_HOST/supervisor/stylesheets/ superviseur.css est également un 404.
@yarikdot fonctionne pour moi sur la v3.2, mais pas la vue "tail -f" des journaux
Des progrès sur la pull request : https://github.com/Supervisor/supervisor/pull/593 ?
base_path
option #593 : Présentez base_path
pour l'interface Web , je veux utiliser le moniteur Web proxy nginx pour le sous-chemin, quelque chose pourrait aider ?
Merci.
Vous aimez voir un préfixe d'URL ajouté, une mise à jour à ce sujet ?
PR #593 me semble OK.
Un détail qui semble ajouter au problème est le chemin manquant dans l'en-tête "Location". Peut-être qu'il n'y aurait pas de préfixe d'URL nécessaire dans la plupart des cas s'il y en avait un ?
Par exemple, il s'agit d'un en-tête d'emplacement que j'obtiendrais généralement :
Location: http://supervisor:9001?message=…
Remarque : aucun chemin ou "/" n'est présent. C'est une URL parfaitement valide, mais dans mon cas, la barre oblique manquante perturbe mon proxy dans Apache, qui devrait pouvoir modifier l'URL immédiatement.
Pour que cela fonctionne, j'ai dû utiliser une configuration plutôt inhabituelle :
ProxyPass /supervisor/ http://127.0.0.1:9001/
ProxyPassReverse /supervisor/ http://127.0.0.1:9001
… par exemple une barre oblique sur demande, pas de barre oblique sur les réponses. Je ne sais pas si le chemin manquant est un bogue, cela semble au moins inhabituel et je pense qu'il faudrait en ajouter un.
Commentaire le plus utile
btw : Cette configuration nginx fonctionne pour moi très bien :