Problème d'envoi d'e-mails

Salut.

J’essayais d’envoyer un e-mail après un changement de serveur de messagerie, avant cela fonctionnait bien, mais maintenant je ne peux plus envoyer d’e-mails. Le truc, c’est que la connexion fonctionne à 100 % comme vous pouvez le voir. Mais pour une raison quelconque, il est incapable d’envoyer l’e-mail.

Adresse e-mail pour tester l'envoi ? ('n' pour ignorer) [community@brohosting.eu]:
Envoi d'un e-mail à community@brohosting.eu. . .
Test d'envoi à community@brohosting.eu en utilisant smtppro.zoho.eu:587, nom d'utilisateur : info@brohosting.eu avec authentification de connexion.
Connexion au serveur SMTP réussie.
Envoi à community@brohosting.eu. . .
Échec de l'envoi de l'e-mail.
fin de fichier atteinte

Des suggestions ?

Vérifiez que votre fournisseur d’hébergement VPS a débloqué le port SMTP (même si la connexion semble avoir été confirmée)… vérifiez également les journaux de votre service de messagerie pour obtenir des preuves de la demande.

1 « J'aime »

Il fonctionne sur mon Raspberry comme toujours. Mais oui, la connexion est bonne. Je vais vérifier avec Zoho.

J’ai déjà vu ce message « fin de fichier », mais je ne me souviens plus de la résolution. Vous pourriez la trouver en cherchant ici.

Il ne devrait y avoir aucune solution à cela. Pourquoi aurais-je besoin de modifier quoi que ce soit si la connexion a réussi ?

De plus, oui, j’ai trouvé plusieurs sujets comme celui-ci, y compris un fil de discussion où vous avez répondu, mais je ne vais pas revenir au port 465 qui est obsolète. Évidemment, le problème vient de Discourse ou de sa bibliothèque d’envoi d’e-mails.

Voudriez-vous partager votre fichier app.yml expurgé ? Je pense qu’il manque quelque chose dans votre section SMTP ou qu’elle est mal configurée.

1 « J'aime »

Je peux partager, mais comment pourrait-il être mal configuré si la connexion a réussi ?

## voici le modèle de conteneur Docker Discourse tout-en-un et autonome
##
## Après avoir apporté des modifications à ce fichier, vous DEVEZ reconstruire
## /var/discourse/launcher rebuild app
##
## SOYEZ *TRÈS* PRUDENT LORS DE LA MODIFICATION !
## LES FICHIERS YAML SONT EXTRÊMEMENT SENSIBLES AUX ERREURS D'ESPACEMENT OU D'ALIGNEMENT !
## visitez http://www.yamllint.com/ pour valider ce fichier si nécessaire

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 Lets Encrypt (https)
#  - "templates/web.ssl.template.yml"
#  - "templates/web.letsencrypt.ssl.template.yml"

## quels ports TCP/IP ce conteneur doit-il exposer ?
## Si vous souhaitez que Discourse partage un port avec un autre serveur web comme Apache ou nginx,
## voir https://meta.discourse.org/t/17247 pour plus de détails
expose:
  - "8080:8080"   # http
  - "15432:5432" # PostgreSQL
#  - "8443:8443" # https

params:
  db_default_text_search_config: "pg_catalog.english"

  ## Définissez db_shared_buffers à un maximum de 25 % de la mémoire totale.
  ## sera défini automatiquement par le bootstrap en fonction de la RAM détectée, ou vous pouvez le remplacer
  #db_shared_buffers: "256MB"

  ## peut améliorer les performances de tri, mais ajoute de la consommation mémoire par connexion
  #db_work_mem: "40MB"

  ## Quelle révision Git ce conteneur doit-il utiliser ? (défaut : tests-passed)
  #version: tests-passed

env:
  LC_ALL: en_US.UTF-8
  LANG: en_US.UTF-8
  LANGUAGE: en_US.UTF-8
  EMBER_CLI_PROD_ASSETS: 1
  # DISCOURSE_DEFAULT_LOCALE: en

  ## Combien de requêtes web simultanées sont prises en charge ? Dépend de la mémoire et des cœurs CPU.
  ## sera défini automatiquement par le bootstrap en fonction des CPU détectés, ou vous pouvez le remplacer
  #UNICORN_WORKERS: 3

  ## TODO : Le nom de domaine auquel cette instance Discourse répondra
  ## Obligatoire. Discourse ne fonctionnera pas avec un simple numéro IP.
  DISCOURSE_HOSTNAME: community.brohosting.eu

  ## Décommentez si vous souhaitez que le conteneur soit démarré avec le même
  ## nom d'hôte (-h option) que celui spécifié ci-dessus (par défaut "$hostname-$config")
  #DOCKER_USE_HOSTNAME: true

  ## TODO : Liste des e-mails séparés par des virgules qui seront rendus administrateurs et développeurs
  ## lors de la première inscription, exemple 'user1@example.com,user2@example.com'
  DISCOURSE_DEVELOPER_EMAILS: 'community@brohosting.eu'

  ## TODO : Le serveur de messagerie SMTP utilisé pour valider les nouveaux comptes et envoyer des notifications
  # L'ADRESSE SMTP, le nom d'utilisateur et le mot de passe sont requis
  # ATTENTION le caractère '#' dans le mot de passe SMTP peut causer des problèmes !
  DISCOURSE_SMTP_ADDRESS: smtppro.zoho.eu
  DISCOURSE_SMTP_PORT: 587
  DISCOURSE_SMTP_USER_NAME: info@brohosting.eu
  DISCOURSE_SMTP_PASSWORD: "XXXXXXXXXXXX"
  DISCOURSE_SMTP_ENABLE_START_TLS: true           # (optionnel, défaut true)
  DISCOURSE_SMTP_DOMAIN: brohosting.eu
  DISCOURSE_SMTP_AUTHENTICATION: login
  DISCOURSE_NOTIFICATION_EMAIL: community@brohosting.eu

  ## Si vous avez ajouté le modèle Lets Encrypt, décommentez ci-dessous pour obtenir un certificat SSL gratuit
#  LETSENCRYPT_ACCOUNT_EMAIL: info@brohosting.eu

  ## L'adresse CDN http ou https pour cette instance Discourse (configurée pour tirer)
  ## voir https://meta.discourse.org/t/14857 pour plus de détails
  #DISCOURSE_CDN_URL: https://discourse-cdn.example.com

  ## La clé d'adresse IP de géolocalisation Maxmind pour la recherche d'adresses IP
  ## voir https://meta.discourse.org/t/-/137387/23 pour plus de détails
  #DISCOURSE_MAXMIND_LICENSE_KEY: 1234567890123456
## Le conteneur Docker est sans état ; toutes les données sont stockées dans /shared
volumes:
  - volume:
      host: /var/discourse/shared/standalone
      guest: /shared
  - volume:
      host: /var/discourse/shared/standalone/log/var-log
      guest: /var/log

## Les plugins vont ici
## voir https://meta.discourse.org/t/19157 pour plus de détails
hooks:
  after_code:
    - exec:
        cd: $home/plugins
        cmd:
          - git clone https://github.com/discourse/docker_manager.git
          - git clone https://github.com/discourse/discourse-chat.git
          - git clone https://github.com/discourse/discourse-reactions.git
          - git clone https://github.com/discourse/discourse-solved.git
          - git clone https://github.com/discourse/discourse-voting.git
          - git clone https://github.com/discourse/discourse-chat-integration.git


## Toutes les commandes personnalisées à exécuter après la construction
run:
  - exec: echo "Début des commandes personnalisées"
  ## Si vous souhaitez définir l'adresse e-mail 'De' pour votre première inscription, décommentez et modifiez :
  ## Après avoir reçu le premier e-mail d'inscription, re-commentez la ligne. Elle ne doit s'exécuter qu'une seule fois.
  #- exec: rails r "SiteSetting.notification_email='info@unconfigured.discourse.org'"
  - exec: echo "Fin des commandes personnalisées"

L’adresse info@brohosting.eu a-t-elle la bonne configuration pour envoyer des e-mails en tant que community@brohosting.eu ?

Cela doit être vérifié auprès de votre fournisseur SMTP.

4 « J'aime »

Je vais essayer quelque chose et je vous tiendrai au courant.

Merci Bhanu, je n’ai pas assez prêté attention à cela, je déteste les paramètres de Zoho car ils cachent trop ces options.

1 « J'aime »

La bonne nouvelle, c’est que vous n’avez pas passé 5 jours à déboguer la bibliothèque smtp comme vous l’aviez suggéré !

(J’ai passé une douzaine d’heures sur plusieurs jours récemment à déboguer le code qui insérait un menu déroulant qui ne se déroulait pas. J’ai scruté le café qui insérait le menu déroulant. J’ai examiné le café qui produisait les données pour le menu déroulant. Je l’ai comparé à la façon dont fonctionnaient les autres menus déroulants. Puis, j’ai trouvé une petite ligne de css que j’avais insérée et qui avait fait qu’il n’y avait pas d’espace pour que le menu déroulant se déroule.)

Je suis content que vous ayez réussi !

3 « J'aime »

Je veux dire, il pourrait au moins vérifier et afficher une meilleure erreur, car c’est vraiment déroutant.

C’est pourquoi l’installation standard inclut une liste de fournisseurs de messagerie recommandés. Si vous souhaitez vous écarter de ces recommandations, vous acceptez également la complexité technique supplémentaire qu’elles introduisent. Tous les serveurs de messagerie ne se comportent pas de la même manière, ce n’est pas à Discourse de résoudre ce problème.

Le résumé de ce qui précède est que vous avez mal configuré Zoho. Discourse ne peut pas voir la configuration là-bas et suppose que vous lui fournissez des informations correctes. Si vous aviez réexécuté ./discourse-setup, il vous aurait à nouveau demandé l’adresse d’envoi, que vous auriez mal saisie en raison de cette mauvaise configuration.

Nous pouvons épargner aux utilisateurs bien des problèmes, mais rarement eux-mêmes. La prochaine fois, je suggérerais de vous concentrer sur les aspects les plus probables et de vérifier les détails des systèmes externes, avant d’insister sur le fait que le problème réside dans le code utilisé pour servir des dizaines de millions d’utilisateurs. Cela vous permettra probablement d’obtenir votre réponse beaucoup plus rapidement.

Vous avez raison, mais vous pourriez également le mentionner dans le guide de dépannage des e-mails, même s’il s’agit d’une étape assez explicite avant de configurer Discourse.

Quoi qu’il en soit, je suis reconnaissant envers les personnes ci-dessus pour leur aide.

Ce serait formidable.

Mais il n’est pas clair que « fin de fichier atteinte » signifiera toujours « vous n’avez pas configuré votre service de messagerie pour l’adresse d’envoi que vous avez utilisée » ou quoi que ce soit d’autre que vous avez fait pour résoudre les problèmes.

Il s’avère qu’il y a beaucoup de choses qui peuvent mal tourner après que Discourse se connecte avec succès à un serveur de messagerie. Si vous voulez un meilleur message d’erreur, demandez à Zoho d’en fournir un plutôt que de simplement fermer la connexion.

1 « J'aime »

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