email symfony1 smtp gmail

email - En el host remoto: no se pudo establecer la conexión con el host smtp.gmail.com



symfony1 (5)

Tomé estas instrucciones directamente del sitio de gmail.

tienes que usar @ gmail.com en tu nombre de usuario.

Outgoing Mail (SMTP) Server - requires TLS: smtp.gmail.com (use authentication) Use Authentication: Yes Use STARTTLS: Yes (some clients call this SSL) Port: 465 or 587 Account Name: your full email address (including @gmail.com) Google Apps users, please enter username@your_domain.com Password: your Gmail password

Después de la implementación, obtengo este error a continuación cuando intento enviar un correo electrónico:

500 | Error interno del servidor | No se pudo establecer la conexión Swift_TransportException con el host smtp.gmail.com [Connection timed out # 110] trace trace

* at () in SF_ROOT_DIR/lib/vendor/symfony/lib/vendor/swiftmailer/classes/Swift/Transport/StreamBuffer.php line 235 ... 232. } 233. if (!$this->_stream = fsockopen($host, $this->_params[''port''], $errno, $errstr, $timeout)) 234. { 235. throw new Swift_TransportException( 236. ''Connection could not be established with host '' . $this->_params[''host''] . 237. '' ['' . $errstr . '' #'' . $errno . '']'' 238. ); * at Swift_Transport_StreamBuffer->_establishSocketConnection() in SF_ROOT_DIR/lib/vendor/symfony/lib/vendor/swiftmailer/classes/Swift/Transport/StreamBuffer.php line 70 ... 67. break; 68. case self::TYPE_SOCKET: 69. default: 70. $this->_establishSocketConnection(); 71. break; 72. } 73. } * at Swift_Transport_StreamBuffer->initialize(array(''protocol'' => ''ssl'', ''host'' => ''smtp.gmail.com'', ''port'' => 465, ''timeout'' => 30, ''blocking'' => 1, ''type'' => 1)) in SF_ROOT_DIR/lib/vendor/symfony/lib/vendor/swiftmailer/classes/Swift/Transport/AbstractSmtpTransport.php line 101 ... 98. 99. try 100. { 101. $this->_buffer->initialize($this->_getBufferParams()); 102. } 103. catch (Swift_TransportException $e) 104. { * at Swift_Transport_AbstractSmtpTransport->start() in SF_ROOT_DIR/lib/vendor/symfony/lib/vendor/swiftmailer/classes/Swift/Mailer.php line 74 ... 71. 72. if (!$this->_transport->isStarted()) 73. { 74. $this->_transport->start(); 75. } 76. 77. return $this->_transport->send($message, $failedRecipients); * at Swift_Mailer->send(object(''Swift_Message''), array()) in SF_ROOT_DIR/lib/vendor/symfony/lib/mailer/sfMailer.class.php line 300 ... 297. return $this->realtimeTransport->send($message, $failedRecipients); 298. } 299. 300. return parent::send($message, $failedRecipients); 301. } 302. 303. /** * at sfMailer->send(object(''Swift_Message'')) in SF_ROOT_DIR/lib/vendor/symfony/lib/mailer/sfMailer.class.php line 263 ... 260. */ 261. public function composeAndSend($from, $to, $subject, $body) 262. { 263. return $this->send($this->compose($from, $to, $subject, $body)); 264. } 265. 266. /** * at sfMailer->composeAndSend(''[email protected]'', ''[email protected]'', ''Confirm Registration'', ''Hello fjklsdjf,<br/><br/> <a href="http://www.tirengarfio.com/rs5/web/frontend_dev.php/register/confirm/m/19">Click here to confirm your registration</a><br/><br/> Your login information can be found below:<br/><br/> Username: fjklsdjf<br/> Password: m'') in SF_ROOT_DIR/plugins/sfDoctrineGuardExtraPlugin/modules/sfGuardRegister/lib/BasesfGuardRegisterActions.class.php line 89 ... 86. $user->getEmailAddress(), 87. ''Confirm Registration'', 88. $message 89. ); 90. } 91. 92. /** * at BasesfGuardRegisterActions->sendRegisterConfirmMail(object(''sfGuardUser''), ''m'') in SF_ROOT_DIR/plugins/sfDoctrineGuardExtraPlugin/modules/sfGuardRegister/lib/BasesfGuard

Esta es mi configuración en fábricas.yml.

all: mailer: param: delivery_strategy: realtime transport: class: Swift_SmtpTransport param: host: smtp.gmail.com port: 465 encryption: ssl username: tirengarfio password: XXXX

El puerto 465 está abierto en mi host remoto. No hay problema en localhost.

¿Alguna idea?

- Javi

Ubuntu 8.04


No sé si esto ayuda, compro que he corrido con el mismo problema en mi máquina local (Windows). Para resolver esto tuve que copiar dos dlls en el directorio php a system32 (ssleay.dll y libeay.dll) y anular la extensión php_openssl.dll en mi configuración de Apache. Puede haber una solución similar para Linux. Te sugiero que contactes con el hosting porque es muy posible que no puedas realizar esta solución en un hosting compartido.


Necesita abrir 465 en el firewall

En el firewall CSF necesita agregar 465 en TCP_OUT =


Bueno, tuve el mismo problema por un tiempo, reemplazando: smtp.gmail.com con 173.194.65.108 realmente funcionó para mí.


Si obtienes esto constantemente sin suerte, revisa la configuración nuevamente. Estaba pasando por alto mi configuración y luego descubrí que el host estaba equivocado.

Utilicé, smtp.google.com

en lugar de smtp.gmail.com

Demasiado tonto, pero me pasó a mí.