Comment puis-je mettre à jour la configuration nginx directement dans discourse/docker ..?

Dans le fichier de modèle web, j’ai trouvé les instructions où il met à jour le modèle de fichier de configuration nginx (remplacer les instructions)…
N’y a-t-il pas un moyen d’ajouter une section entière à la configuration nginx ???

Le dossier /uploads dans discourse/shared est accessible depuis nginx. Je veux ajouter un nouveau dossier /photos.
Existe-t-il un moyen direct (méthode recommandée par discourse) ?

Pouvez-vous expliquer pourquoi vous voulez faire cela ?

« Photos » peut de toute façon être téléchargé sur Discourse. Le téléchargement et l’optimisation d’images sont déjà intégrés à Discourse.

Peut-être ai-je donné le mauvais exemple… Ce que j’essaie de comprendre, c’est… comment puis-je accéder à la configuration Nginx d’origine et y ajouter une section entière, que ce soit pour ajouter un nouveau mappage pour un dossier ou autre chose… est-ce faisable ? Ou est-ce simplement déconseillé ?

Je peux installer un serveur Nginx externe et lui faire rediriger tous les liens vers le Nginx Docker et faire mes affaires…

Vous pourriez trouver une technique similaire pour modifier la configuration dans ce vieux conseil qui fonctionne pour vous :

(tiré d’une version antérieure de cet article de wiki : Set up Let’s Encrypt with multiple domains / redirects)

« C’est assez simple, ajoutez quelque chose comme ce qui suit à la section des hooks de votre app.yml :

Étape 2 - discourse.conf

En plus de l’étape 1, une modification est nécessaire pour que nginx redirige correctement http vers https pour tout ce qui n’est pas DISCOURSE_HOSTNAME.

    - replace:
        filename: "/etc/nginx/conf.d/discourse.conf"
        from: /return 301 https.+/
        to: |
          return 301 https://$host$request_uri;

Nous devons également supprimer la réécriture supplémentaire que web.ssl.template.yml ajoute, car elle ne force que le DISCOURSE_HOSTNAME et nous en avons maintenant d’autres !

    - replace:
        filename: "/etc/nginx/conf.d/discourse.conf"
        from: /gzip on;[^\\}]+\\}/m
        to: |
          gzip on;
          add_header Strict-Transport-Security 'max-age=31536000'; # mémoriser le certificat pendant un an et se connecter automatiquement à HTTPS pour ce domaine

Oui, j’ai trouvé ces instructions dans les fichiers du modèle. N’y a-t-il pas d’instruction pour ajouter une nouvelle section ? au lieu de trouver-remplacer ??

Vous allez devoir faire preuve de créativité, je suppose.

Pourquoi ne pas nous dire pourquoi vous avez besoin de ce dossier supplémentaire ? Il est possible que quelqu’un d’autre ait eu un besoin similaire, mais que la solution supposée ne soit pas la seule façon d’y parvenir.

1 « J'aime »

J’ai dit que c’était un mauvais exemple… Je peux gérer n’importe quel dossier supplémentaire avec différentes solutions… aucun problème jusqu’à présent…
Pourtant, je veux pouvoir ajouter une toute nouvelle section dans la configuration nginx… Je suis juste curieux de savoir comment le faire si je devais le faire…

Y a-t-il une chance que vous puissiez faire correspondre le modèle comme je l’ai proposé, la correspondance étant le modèle à la fin du fichier, puis remplacer le modèle par le même, mais avec vos modifications ajoutées à la fin ?

Je pensais aussi..
Je me demandais s’il existait un champ magique pour la section nouvellement ajoutée… défini à cet effet…
Peu importe… Je pense que je peux gérer en fonction de votre suggestion.

1 « J'aime »

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.