Swiftmailer: la connexion n'a pas pu être établie avec l'hôte smtp.gmail.com [Connection expiré # 110]
Je poste parce que j'ai déjà traversé les solutions posté dans autres questions ici, mais ils ne l'ont pas aidé.
Ce que j'essaie de faire est d'envoyer e-mail à l'aide de Swiftmailer par le biais de Google Apps for Business Gmail mais je reçois cette erreur:
Impossible d'établir une connexion avec l'hôte smtp.gmail.com [Connection timed out #110]
Je sais que le code est bien parce qu'il fonctionne sur ma machine locale, mais pas sur le serveur de production.
Ce que j'ai essayé jusqu'à présent:
- Permis D'OpenSSL.
- Débloqué le compte de Google captcha.
- Utilisé un Mot de passe Spécifique à l'Application.
- Adresse SMTP de Gmail adresses IP
Configuration:
# Swiftmailer Configuration
swiftmailer:
transport: smtp
encryption: ssl
auth_mode: login
host: smtp.gmail.com
username: contact@mydomain.com
password: applicationspecificpassword
port: 465
Quoi d'autre puis-je essayer? Cela pourrait-il être un problème de DNS depuis que je suis en utilisant Gmails SMTP enregistrements MX au lieu des serveurs.
source d'informationauteur Jonathan | 2014-08-27
Vous devez vous connecter pour publier un commentaire.
Remplacement:
smtp.gmail.com
avec173.194.65.108
effectivement travaillé pour moi!Les étapes suivantes fonctionné pour moi :
Vérifier si httpd_can_sendmail est sur , exécutez cette
getsebool httpd_can_sendmail
setsebool -P httpd_can_sendmail 1
Vérifiez également si httpd_can_network_connect est sur, exécutez
getsebool httpd_can_network_connect
setsebool -P httpd_can_network_connect 1
'host' => '64.233.166.108'
'port' => '465'
J'utilise Centos
Si jamais vous voulez revenir à l'utilisation de Gmail, j'ai juste face au même problème - le code a fonctionné sur ma machine locale, mais pas sur un serveur réel - et pense que j'ai compris ce qui est à l'origine (au moins dans mon cas).
Il semble que si un serveur prend en charge IPv6 et IPv4, le domaine du serveur résout que ses IPv6 version de PHP tente de se connecter à. Mais j'ai découvert qu'smtp.gmail.com n'a pas répondu, donc après 30 secondes, le script simplement abandonné et a expiré. On pourrait penser que PHP voudrais essayer IPv4 après IPv6 a échoué, mais non.
Alors, quand j'ai échangé dans l'adresse IPv4 smtp.gmail.com (obtenu par ping-ing), tout a bien fonctionné et que l'email envoyé. Ce n'est pas idéal en utilisant une adresse IP à la place d'un domaine, car il pourrait changer, mais au moins, il enregistre de creuser le reste du serveur de plancher 🙂
juste ajouter
74.125.130.108 smtp.gmail.com
de du serveur de fichier hosts
Pour moi, le problème a été que je que j'ai utilisé le chiffrement tls,voici les ports de TLS et SSL. N'oubliez pas de redémarrer après la modification du fichier de configuration.
Aussi,vous avez besoin de modifier la sécurité de votre compte google
J'ai posté une solution de rechange dans Swiftmailer Gmail Connection timed out #110 où vous pouvez utiliser soit IPv4 ou IPv6.