Obtenir l'erreur Cloudflare 521 après la mise à niveau de Discourse vers 3.5.0.beta8-dev

Salut tout le monde,

Après avoir mis à jour mon site Discourse vers la version 3.5.0.beta8-dev, j’obtiens soudainement une erreur 521 “Web server is down” lorsque j’accède au site via Cloudflare. C’est inattendu car je l’avais précédemment configuré selon ce guide, et cela avait parfaitement fonctionné jusqu’à présent.

J’ai ensuite essayé de changer le mode de chiffrement SSL/TLS dans Cloudflare de Full (Strict) à Flexible, et le site s’est de nouveau chargé.

Quelqu’un sait pourquoi cela pourrait se produire après la mise à jour ?
Y a-t-il quelque chose de nouveau dans 3.5.0.beta8-dev qui pourrait affecter la compatibilité avec Cloudflare ou la gestion HTTPS ?

Toute aide ou suggestion serait grandement appréciée !

Merci d’avance !

Je fais fonctionner la version 3.5.0.beta8-dev avec SSL complet (strict) avec Cloudflare et je n’ai aucun problème.

Quelques points à vérifier :

  • Vérifiez votre Let’s Encrypt - Examinez votre journal de mise à niveau et validez que tout a été reconstruit correctement.
  • Vérifiez les changements de pare-feu externes (DigitalOcean fournit des pare-feu externes)

Le 521 et le passage à Flexible indiquent que votre serveur n’est pas configuré avec HTTPS.

Merci pour les suggestions ! @LotusJeff

J’ai vérifié ma configuration SSL et je n’utilise pas Let’s Encrypt. J’ai généré un certificat d’origine de Cloudflare et placé la clé et le certificat ici :

J’ai effectué une reconstruction complète après vérification. Mais j’obtiens toujours une erreur 521 lorsque Cloudflare est défini sur Full (Strict).

Voici la section des modèles de mon app.yml à titre de référence :

templates:
  - "templates/postgres.template.yml"
  - "templates/redis.template.yml"
  - "templates/web.template.yml"
  - "templates/web.ratelimited.template.yml"
  ## Décommentez ces deux lignes si vous souhaitez ajouter Let's Encrypt (https)
  - "templates/web.ssl.template.yml"
  # - "templates/web.letsencrypt.ssl.template.yml"
  - "templates/cloudflare.template.yml"

expose:
  - "80:80"   # http
  - "443:443" # https

Merci encore d’avoir pris le temps de m’aider !

En travaillant de mémoire, les certificats Cloudflare ont une durée de 90 jours. Cela vous obligera à créer de nouveaux certificats tous les 3 mois. Vous souvenez-vous de l’âge de vos certificats ?

Le réglage par défaut est d’utiliser Let’s Encrypt. Le système renouvellera automatiquement vos certificats pour vous. Une chose de moins à gérer manuellement.

Cloudflare fournit désormais des certificats valides jusqu’à 15 ans, le mien est toujours dans la période de validité.

Cela dit, juste pour être sûr, j’ai également essayé de générer un nouveau certificat et de remplacer celui existant, mais j’ai toujours le même problème.

Si je veux revenir à la configuration par défaut utilisant Let’s Encrypt,
est-il suffisant de simplement :

  1. Décommenter cette ligne dans app.yml :
- "templates/web.letsencrypt.ssl.template.yml"
  1. Et définir le mode SSL de Cloudflare sur Full ?

Je n’ai jamais effectué la transition des certificats privés vers Let’s Encrypt avec Discourse, et cela étant dit…

Dans le fichier app.yml, vous devrez décommenter à deux endroits :

  1. La ligne de modèle pour - "templates/web.letsencrypt.ssl.template.yml"
  2. L’e-mail du compte Let’s Encrypt :
## Si vous avez ajouté le modèle Let's Encrypt, décommentez ci-dessous pour obtenir un certificat SSL gratuit
  LETSENCRYPT_ACCOUNT_EMAIL: <ajoutez votre adresse e-mail ici>

Si vous avez apporté d’autres modifications manuelles aux modèles pour des certificats SSL personnalisés, elles devront être annulées pour revenir aux paramètres standard.

Le composant Let’s Encrypt est situé vers la fin lorsque vous reconstruisez l’application. Gardez un œil dessus et voyez si vous recevez des codes d’erreur.

1 « J'aime »

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