Projet

Général

Profil

Tâche #18879

Scénario #18551: Nginx doit servir de reverse proxy pour des applications locales et distantes

Retravailler la configuration nginx pour supporter la publication d’application web

Ajouté par Daniel Dehennin il y a plus de 7 ans. Mis à jour il y a environ 7 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Début:
26/01/2017
Echéance:
% réalisé:

100%

Temps estimé:
6.00 h
Temps passé:
Restant à faire (heures):
0.0

Révisions associées

Révision 3763b1a9 (diff)
Ajouté par Daniel Dehennin il y a plus de 7 ans

Permettre la publication d’applications locales par Nginx

Nous permettons un paramétrage de Nginx en dehors du simple reverse
proxy Amon.

Pour ce faire :

- Nous déclarons une nouvelle variable « %%activer_nginx_web » ;

- Nous déclarons une nouvelle famille « Nginx » regroupant les
variables communes à la publication d’application web par Nginx et
au reverse proxy

+ « %%test_nginx_open_port » était précédemment nommée
« %%test_revprox_open_port » : variable automatiquement calculée
permettant d’ouvrir les ports 80 et 443
+ « %%nginx_degrade_http » permet de dégrader la sécurité en HTTP
+ « %%revprox_hash_bucket_size » était précédemment dans la famille
« Reverse proxy », mais elle est utile aussi pour la publication
d’application web par Nginx

La variable « %%activer_nginx_web » n’est disponible que lorsqu’apache
n’écoute pas sur les ports 80 et 443 :

- AmonEcole : Nginx est sur le maître, il n’y a donc aucun conflit
avec Apache ;

- Scribe/Horus : Il faut que la variable « %%activer_apache » soit à « non » ;

- Tous les autres modules n’ont pas apache par défaut.

Les applications locales sont publiées :

- En HTTPS par défaut sauf si la variable experte
« %%nginx_degrade_http » est passée à « oui ».
Certaines applications peuvent se désactiver si l’administrateur
force le HTTP non sécurisé ;

- Sur le nom de domaine « %%nom_domaine_machine » ;

- Sur le nom de domaine « %%web_url » s’il est défini ;

- Sur le nom de domaine « %%revprox_default » s’il est défini.

  • dicos/25_nginx.xml: Nouvelle variable « %%activer_nginx_web »
    conditionnée sur « %%activer_apache » et « %%mode_conteneur_actif ».
    Nouvelle famille « Nginx » contenant
    Nouvelle variable en mode expert « %%nginx_degrade_http ».
    Variable « %%test_revprox_open_port » de la famille « Reverse
    proxy » devient « %%test_nginx_open_port » dans la famille
    « Nginx ».
    Variable « %%revprox_hash_bucket_size » de la famille « Reverse
    proxy » est déplacée dans la famille « Nginx »
  • tmpl/nginx.default: Include les fichiers « upstream.d/*.conf » au
    niveau de la configuration « HTTP » et « web.d/*.conf » pour les
    serveurs éligibles.
    Seuls les entêtes « X-Forwarded-For » des reverses proxy de confiances
    sont pris en compte.
    Protection de certaines sections si le reverse proxy est désactivé.

Ref: #18879

Révision c09af429 (diff)
Ajouté par Daniel Dehennin il y a plus de 7 ans

Amélioration cosmésique du dictionnaire et du fichier de configuration

  • dicos/25_nginx.xml: Ajout de ligne vide pour aérer le dictionnaire.
  • tmpl/nginx.default: Suppression d’espaces en début de ligne.
    Correction de l’alignement des accolades fermantes des « location ».
    Indentation des directives de templating pour s’y retrouver

Ref: #18879

Révision ba795b91 (diff)
Ajouté par Daniel Dehennin il y a plus de 7 ans

La famille « Applications web Nginx » doit être désactivable

  • dicos/25_nginx.xml: Conditionner la famille sur
    « %%activer_nginx_web ».

Ref: #18879

Révision ed251964 (diff)
Ajouté par Daniel Dehennin il y a plus de 7 ans

Revert "La famille « Applications web Nginx » doit être désactivable"

La famille doit être accessible tout le temps :

- certaines applications tourneront toujours sur le maître
- certaines applications tourneront toujours dans le conteneur web

Ref: #18879

This reverts commit ba795b91c0afbba69acdfee28bbfedc7d049d7c9.

Révision a1225509 (diff)
Ajouté par Daniel Dehennin il y a environ 7 ans

Remove ambiguous “optional='True'”

The variables are defined in the current XML with “exists='False'”.

Ref: #18879

Historique

#1 Mis à jour par Daniel Dehennin il y a plus de 7 ans

  • Projet changé de Distribution EOLE à eole-reverseproxy

#2 Mis à jour par Daniel Dehennin il y a plus de 7 ans

  • Assigné à mis à Daniel Dehennin
  • % réalisé changé de 0 à 30
  • Restant à faire (heures) changé de 6.0 à 4.0

Le dictionnaire me semble OK, il reste à travailler sur le template nginx.

#3 Mis à jour par Scrum Master il y a plus de 7 ans

  • Projet changé de eole-reverseproxy à Distribution EOLE
  • Statut changé de Nouveau à En cours

#4 Mis à jour par Scrum Master il y a plus de 7 ans

  • Statut changé de En cours à Résolu

#5 Mis à jour par Daniel Dehennin il y a plus de 7 ans

  • Restant à faire (heures) changé de 4.0 à 1.0

#6 Mis à jour par Daniel Dehennin il y a plus de 7 ans

  • % réalisé changé de 30 à 100
  • Restant à faire (heures) changé de 1.0 à 0.25

#7 Mis à jour par Daniel Dehennin il y a plus de 7 ans

  • Projet changé de Distribution EOLE à eole-reverseproxy

#8 Mis à jour par Daniel Dehennin il y a environ 7 ans

Pour tester

Sur Scribe et Horus il faut désactiver apache.

#9 Mis à jour par Laurent Flori il y a environ 7 ans

  • Projet changé de eole-reverseproxy à Distribution EOLE
  • Statut changé de Résolu à Fermé
  • Restant à faire (heures) changé de 0.25 à 0.0

Formats disponibles : Atom PDF