Forum |  HardWare.fr | News | Articles | PC | Prix | S'identifier | S'inscrire | Aide | Shop Recherche
1836 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Fonction mail() de PHP avec plusieurs serveurs SMTP

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Fonction mail() de PHP avec plusieurs serveurs SMTP

n°2341651
rufo
Pas me confondre avec Lycos!
Posté le 18-11-2019 à 13:03:08  profilanswer
 

Bonjour,Une de mes applis à besoin d'envoyer pas mal de mails (de l'ordre de 5000 à 10000 par mois). On utilise Free actuellement comme serveur SMTP. Quand certains envois sont trop rapprochés et/ou trop nombreux à un instant t, ça coince. Le serveur SMTP refuse l'envoi. Il faut attendre un certain temps avant d'être autorisé à nouveau à envoyer.Dans l'appli, j'ai codé un système pour étaler les envois mais malgré tout, quand trop d'utilisateurs déclenchent des envois, ça engorge le système.
Du coup, j'essaye de faire un système d'envoi avec plusieurs serveurs SMTP (ex : Free, 1&1...). Comme ça, quand je suis bloqué avec l'un, je passe sur un autre. Par contre, avec juste la fonction mail() de base, j'ai pas trouvé comment gérer plusieurs serveurs SMTP (ni même comment passer l'authentification). Apparemment, il faut utiliser la lib PHPMailer.
Vous confirmez ? Avez-vous déjà développé ce genre de système ?
Merci.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Cantine Calandreta : http://sourceforge.net/projects/canteen-calandreta
mood
Publicité
Posté le 18-11-2019 à 13:03:08  profilanswer
 

n°2341659
B4X
kebab-case
Posté le 18-11-2019 à 13:47:17  profilanswer
 

Oui pour PHPMailer.
Non pour ton petit bricolage. Avec un tel volume, il faudrait peut-être commencer à envisager une solution payante (MailJet/MailGun/SparkPost/SendInBlue/etc).
Sinon tu te fais un fichier de config sous la forme d'un array avec plusieurs smtp, et tu randomise chaque fois que tu lance un mail. C'est bancale comme concept...


---------------
In vanitas veritas.
n°2341689
rufo
Pas me confondre avec Lycos!
Posté le 18-11-2019 à 17:15:05  profilanswer
 

Je ne randomize pas. Dans un fichier, je stocke le dernier serveur SMTP utilisé. Quand j'envoie un mail, je lis ce fichier et essaye d'envoyer le mail avec lui. Si ça échoue, je passe au serveur suivant. Si ça marche, j'enregistre dans le fichier le serveur qui a fonctionné pour qu'au prochain coup, je ne me retape pas le ou les serveurs qui sont bloqués. Je fais comme ça jusqu'à arriver au dernier serveur puis je reprends à partir du premier qui, normalement, aura eu le temps de se débloquer.
 
Je viens de le mettre en place et ça fonctionne. :)
 
J'ai conscience que c'est du bricolage mais on n'a pas les moyens de prendre un prestataire payant et Amazon qui n'est pas cher ($1/mois pour 10000 mails), ça ne me branche pas. Vu la différence de tarif avec les autres prestataires (le moins cher que j'ai trouvé était à 28€/mois pour 10000 mails), on se doute de comment Amazon rentabilise :/


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Cantine Calandreta : http://sourceforge.net/projects/canteen-calandreta
n°2341884
mathieuu
Posté le 21-11-2019 à 10:05:39  profilanswer
 

Vu la taille de l'infrastructure d'AWS, je pense qu'ils s'en foutent un peu beaucoup d'envoyer 10k mail par mois et qu'il ne cherche juste pas à rentabiliser. Cela fait produit d'appel et ils préfèrent être potentiellement légèrement déficitaire sur l'envoie de mail. Cela permet de faire venir le client chez eux et un certain pourcentage des clients va regarder un peu plus les autres services qu'ils rendent(/vendent) et payer pour plus de choses.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Fonction mail() de PHP avec plusieurs serveurs SMTP

 

Sujets relatifs
RechercheV en PHP ?Excel VBA : fonction indiquant #value au démarrage
[PHP] Remplacer des mots dans une string par des valeurs d'un tableau[PHP] Obtenir l'URL précédente
integration image dans mail[PHP] Systme d'alerte
Problème d'alloc mémoire avec PHP et lib GD pour générer des imagesPHP/Ruby
[Python] Exercice nombre premiers et fonction seuilAfficher / masquer div en fonction d'une liste déroulante (jQuery/JS)
Plus de sujets relatifs à : Fonction mail() de PHP avec plusieurs serveurs SMTP


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite) / Groupe LDLC / Shop HFR