Aller au contenu

[Résolu]Synology-Mails envoyés en PHP n'arrivent jamais


Messages recommandés

Bonjour,

J'utilise la commande PHP : mail(xxxxxxx); mais les mails n'arrivent jamais.

Lorsque je fais un mail de test dans DSM/Panneau de configuration/Notification/email, celui-ci arrive correctement, donc le paramétrage du SMTP est correct.

Quelqu'un aurait-il résolu ce pb et si oui comment, car on trouve plusieurs fois ce pb sur le net mais pas de résolution claire...

Merci d'avance à vous :)

Lien vers le commentaire
Partager sur d’autres sites

Il y a 6 heures, DaffY a dit :

Bonjour,

Dans la notification s’agit il d’une adresse mail de type gmail ?

Bonjour DaffY,

Il ne s'agit pas de gmail mais de sfr...

J'ai vu qu'il y avait des particularités avec gmail, mais je ne suis pas concerné pour le coup !

 

Il y a 6 heures, DaffY a dit :

Bonjour,

Dans la notification s’agit il d’une adresse mail de type gmail ?

 

Lien vers le commentaire
Partager sur d’autres sites

PHP 7.0.33

Pas d'hôte virtuel

Quelle fonction php doit être activée?

Dans le phpinfo je vois bien :

sendmail_from  "monadressemail"  
sendmail_path /usr/bin/ssmtp -t  
     
     
SMTP smtp.numericable.fr  
smtp_port

25

J'ai mis ma page php sur un serveur mutualisé et je reçoit bien les mails, le pb vient bien d'un paramétrage sur le synology...

Lien vers le commentaire
Partager sur d’autres sites

il y a 33 minutes, jp3776 a dit :

J'ai mis ma page php sur un serveur mutualisé et je reçoit bien les mails, le pb vient bien d'un paramétrage sur le synology...

La page web n'est pas sur le syno ? du coup je ne vois pas comment il peut appeler une séquence php du syno ???

Lien vers le commentaire
Partager sur d’autres sites

Ok.
Donc mêmes paramètreres du site distant selon le même serveur de messagerie.


Differences
Local
NAS
Profil php valorisé et fonctions activées?

1/ le serveur d’envoi est non bridé et ouvert genre passerelle via port 25 ou sécurisé via nom utilisateur mot de passe et port 465 ou 995

2 / possible forçage ssmtp requis... action via terminal sur NAS pour signer le fichier

Lien vers le commentaire
Partager sur d’autres sites

Il y a 19 heures, jp3776 a dit :

PHP 7.0.33

Pas d'hôte virtuel

Quelle fonction php doit être activée?

Dans le phpinfo je vois bien :

sendmail_from  "monadressemail"  
sendmail_path /usr/bin/ssmtp -t  
     
     
SMTP smtp.numericable.fr  
smtp_port

25

J'ai mis ma page php sur un serveur mutualisé et je reçoit bien les mails, le pb vient bien d'un paramétrage sur le synology...

1/ Le SMTP cité ci-dessus est non sécurisé, et sur le port 25.

2/ Pouvez-vous m'expliquer de quoi il s'agit (forçage ssmtp...)?

En général, pouvez-vous m'expliquer de quels paramètres a besoin le SYNO pour que la fonction mail() de PHP fonctionne et où les renseigner SVP, car je ne comprends pas pourquoi ça ne fonctionne pas alors que les mails de notifications du SYNO fonctionnent parfaitement. Merci d'avance.

Lien vers le commentaire
Partager sur d’autres sites

Je ne cherche pas à recevoir de mail en php, mais en envoyer, donc imap et pop ne devrait pas résoudre mon pb...

Vous n'avez pas répondu à mes précédentes questions :

"

2/ Pouvez-vous m'expliquer de quoi il s'agit (forçage ssmtp...)?

En général, pouvez-vous m'expliquer de quels paramètres a besoin le SYNO pour que la fonction mail() de PHP fonctionne et où les renseigner SVP, car je ne comprends pas pourquoi ça ne fonctionne pas alors que les mails de notifications du SYNO fonctionnent parfaitement.

"

Lien vers le commentaire
Partager sur d’autres sites

Les extensions peuvent être requises pour que les signatures de fichiers de paramètres soient complètes.

Par défaut cela fonctionne sans problème des-lors que les profils PHP sont correctement renseignés et en lien avec les pramètres du syno côté notification.

From doit forcément être l'e-mail utilisé par la notification

Parfois il peut être nécessaire de jouer sur le revaliases et paramètres liés au ssmtp (service mail du synology)

vieille méthode décrite ici mais qui peut sans doute répondre encore à la problématique rencontrée

https://bit.ly/35kYMGP

 

 

 

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

1/ Pouvez-vous me dire les champs qu'il faut renseigner dans le profil PHP...

J'ai mis mon adresse mail dans le champ "from" des paramètres core de php (identique à l'adresse mail pour les notifications syno)

Le "sendmail_from" à également la même adresse mail

Le "sendmail_path" = /usr/bin/ssmtp -t

Le "smtp_port" = 25

2/ Comment voir les extensions qui sont actives ou non, et comment les activer si ce n'est pas le cas...

3/ J'ai fais votre procédure pour le fichier ssmtp.conf et j'ai bien reçu le mail de fonctionnement, mais je reçois toujours pas les mails générés par ma page php!

Merci d'avance pour vos réponses.

 

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

Comme indiqué depuis le début, il faut que le profil php utilisé soit bien paramètré.
Les fichiers de signatures se font automatiquement mais il est vrai qu’on peut avoir plusieurs versions de php.

1/ autant que possible ne garder qu’une version active et la aussi le plus récente selon les dépendances installées (certaines applications s’appuient sur des versions php particulières)
2/ dans web station préciser le profil utilise et si possible activer les compléments idoines
3/ bien sur vérifier que l’hôte virtuel, si crée, soit en cohérence avec le profil mis en place.

4/ version dsm a jour car à une époque un problème persistait sur la signature des fichiers en lien avec php version 7.2 et plus

Lien vers le commentaire
Partager sur d’autres sites

J'entends bien que le profil php doit être bien paramétré, ce qu'il me faut c'est savoir si les réglages que j'ai fait et que je vous ai communiqué sont corrects, si il en manque lesquels...

J'ai fait ces réglages sur le profil php 7.0, et sélectionné ce profil php 7.0 dans les "paramètres généraux" de PHP.

DSM à jour, pas d'hôte virtuel.

Y a t'il un log sur le syno que je puisse regarder pour voir si une erreur d'envoi du  mail se produit ? (pour info, j'ai un accès aux fichiers via ssh si pas possible via l'interface du syno)

Lien vers le commentaire
Partager sur d’autres sites

Rien n’est a paramétrer dans le profil.

Je conseille de faire un reset du profil
Supprimer le profil par défaut
Réactiver un nouveau profil
Cocher pour activer les variables d’environnemental dans le paramètrage du profil/ décocher ( provoque une réinitialisation des fichiers et donc on peut supposer un workflow pour les fichiers en lien)
Réaffecter le bon profil pou l’hôte virtuel

Retenter

Lien vers le commentaire
Partager sur d’autres sites

  • 2 semaines après...

Bonjour,

Mêmes démarches effectuées ?
Version php ?
Profile par défaut paramètre ?
Webstation correctement configuré ?
Notification mail parametree si possible avec une adresse e-mail autre qu’une gmail ?
...

Lien vers le commentaire
Partager sur d’autres sites

 Merci pour votre réponse

Mêmes démarches effectuées ? OUI
Version php ? 7.3
Profile par défaut paramètre ? profil actif "Default PHP 7.3 Profile"
Webstation correctement configuré ? a priori oui j'ai un site hebergé dessus qui fonctionne et est accessible de l'exterieur
Notification mail parametree si possible avec une adresse e-mail autre qu’une gmail ? j'ai fais 2 test avec une adresse gmail et une autre..dans les 2 cas je recois bien le mail de test mais la fonction php mail() ne fonctionne pas....

Est ce qu'il y a des extensions particulitere a activer dans le profil ? actuellement j'ai GD et MYSQLI

merci par avance

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

Il y’a eu un bug à un époque dans le workflow de mise en place des profiles php en lien avec la gestion des mails sous php avec la version php 7.3.
Correction effectuée par mise à jour du paquet webstation.
J’imagine que ce sont bien les dernières version dsm et webstation qui sont activées.

Rien de particulier n’est normalement à paramétrer dans les cœurs de php, sauf exception pour l’accès à mariaDB mais hors sujet pour la problématique rencontrée.

Perso les extension en lien avec la gestion de mail sont activées chez moi, même si, normalement la encore cela ne devrait être requis, tout comme les extensions pour la couche socket

Mon conseil
Activez les extensions vérifiez si ko

Modifier profile php
Activer cocher open base dir valider
Revenir décocher valider - en théorie réinitialise les fichiers de configuration
Vérifier

Enfin
Sauvegarder votre site web base comprise si présente
Déinstaller webstation
Supprimer dossier web
Redémarrer NAS
Réinstaller
Vérifier

Lien vers le commentaire
Partager sur d’autres sites

MErci pour votre messe

Ce matin (avant d'avoir recu votre message) j'ai réparametré "notification" sur smtp.orange.fr

Et tout fonctionne !!!

Il semblerai que lorsque j'ai fait le test hier le param "From:" de ma fonction mail n'exisait pas......

Et ce matin avec smtp.orange.fr ET "From:adressequelconque" renseigné dans la fonction mail() , ca fonctionne ...

Je précise que le le parametre From: doit etre présent et renseigné même avec une adresse bidon.

J'ai fait qlq tests J'ai un site hébergé chez ovh www.petochon.fr. Donc je me sert allegrement des adresse mail <at>petochon.fr et j'ai constaté que la fonction mail() lancé depuis mon nas fonctionne correctement même si je lui met un parametre "From:azrgfihgdfhg@petochon.fr" !!!

par contre avec un "From:azrgfihgdfhg@orange.fr" la fonction mail renvoie "false"

Comment c'est geré ca ?? A quel niveau , la fonction mail() controle si le nom de domaine du parametre From est orange.fr ou petochon.fr ????

merci presque voisin (je suis de Guérande)

Lien vers le commentaire
Partager sur d’autres sites

La fonction mail php s’appuie sur le service ssmtp de dsm qui lui même est paramètré par l’administration configuration notification.

En théorie il by pass le from.... mais le risque est d’avoir très rapidement le mail dans les spam car les fournisseurs n’aiment pas cela (même si dès le début les protocoles mails le permettent).

Il est préférable d’utiliser le from identique à celui paramètré et bien gérer les headers sous php dans la constitution du message.

On peut ajouter un reply to au besoin si on veut que le client mail récepteur renvoie vers une adresse différente de l’expéditeur.

Tout ceci bien sûr avec une utilisation modérée ... dès qu’on passe à une fréquence élevée et/ou de très nombreux destinataires, il vaut mieux jouer avec des services dédiés pour garantir de passer les fourches caudines des serveurs anti spam.

Lien vers le commentaire
Partager sur d’autres sites

Invité
Ce sujet ne peut plus recevoir de nouvelles réponses.
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.