Nouvelle installation derrière le proxy inverse Litespeed s'arrête à l'écran de chargement

Je déplace une installation Discourse existante vers un nouveau serveur, et la première étape consiste à effectuer une nouvelle installation de Discourse sur le nouveau serveur. Le nouveau serveur a déjà un serveur web sur les ports 80 et 443, j’exécute donc Discourse en tant que socket Unix derrière un proxy inverse, comme décrit ici.

La seule chose que je fais différemment, c’est que je n’utilise pas nginx mais OpenLiteSpeed comme proxy inverse. Cependant, la configuration pour OpenLiteSpeed est assez simple et je l’ai fait fonctionner avec d’autres applications Docker : il suffit de configurer une application externe en utilisant l’adresse du socket, puis de réécrire toutes les requêtes pour qu’elles aillent vers le socket en utilisant un contexte Proxy.

Le résultat est que Discourse se charge lorsque vous accédez à l’URL proxifiée (dans ce cas forum.prostasia.org), mais il affiche seulement l’écran de chargement avec les points animés, et reste bloqué là.

Des suggestions pour dépanner cela ? Merci !

Vous pouvez ouvrir la console JavaScript et voir ce qui est chargé. Vérifiez la console et l’onglet réseau.

Avez-vous supprimé le modèle Let’s Encrypt ?

1 « J'aime »

Merci, cela m’a aidé. Je vois beaucoup de ces erreurs :

Refused to load the script x because it violates the following Content Security Policy directive:

En plaçant un autre conteneur Docker devant le même proxy inverse, j’ai pu résoudre le problème en définissant la variable d’environnement TRUSTED_PROXIES sur **.

Cela vaut la peine d’essayer la même chose, mais comment ferais-je cela avec Discourse ?

Il semble que vous ayez vraiment mal configuré vos paramètres de politique de sécurité du contenu.

Il essaie également de récupérer les logos de http://www.example.com/, ce qui pourrait indiquer où les choses tournent mal. C’est apparemment ce que votre formulaire pense être son nom d’hôte…

image

1 « J'aime »

Merci. Honnêtement, je ne sais pas d’où vient example.com. Comme le script d’installation discourse-setup ne fonctionne pas pour ce cas d’utilisation, tout ce que j’ai fait a été d’éditer containers/app.yml puis de faire un launcher rebuild app. Je suppose que cela a manqué d’écraser un example.com quelque part.

Mais de toute façon, j’ai quand même réussi à résoudre mon problème. Plutôt que d’amorcer une nouvelle installation et de restaurer ma sauvegarde, j’ai créé une archive tar du répertoire /var/discourse entier de mon serveur d’origine, j’ai fait une reconstruction par-dessus, et voilà… tout semble fonctionner correctement. C’est donc ainsi que je restaurerai une sauvegarde à l’avenir. :slight_smile:

1 « J'aime »

discourse-setup peut fonctionner, vous pouvez :

  • désactiver temporairement ce qui se trouve sur les ports 80/443
  • construire sur un serveur différent puis copier
  • utiliser le commutateur pour contourner la vérification de connectivité
1 « J'aime »