На удаленном хосте: не удалось установить соединение с хостом smtp.gmail.com [Тайм-аут соединения # 110] - PullRequest
4 голосов
/ 28 апреля 2010

после развертывания я получаю эту ошибку ниже, когда пытаюсь отправить письмо:

500 | Внутренняя ошибка сервера | Swift_TransportException Не удалось установить соединение с хостом smtp.gmail.com [Тайм-аут соединения # 110] трассировка стека

* 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('tirengar@gmail.com', 'tirengarfio@hotmail.com', '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

Это моя конфигурация в factory.yml.

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

Порт 465 открыт мой удаленный хост. Нет проблем в localhost.

Есть идеи?

- Javi

Ubuntu 8.04

Ответы [ 5 ]

3 голосов
/ 28 ноября 2014

Вам нужно открыть 465 на брандмауэре

На брандмауэре CSF необходимо добавить 465 на TCP_OUT =

3 голосов
/ 28 апреля 2010

Я взял эти инструкции непосредственно с сайта Gmail.

Вы должны использовать @ gmail.com в своем имени пользователя.

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
0 голосов
/ 18 января 2015

Ну, у меня некоторое время была такая же проблема, заменив: smtp.gmail.com на 173.194.65.108 на самом деле у меня сработало!

0 голосов
/ 30 июня 2013

Если вы получаете это постоянно без какой-либо удачи, то проверьте настройки еще раз. Я не обращал внимания на мои настройки и позже обнаружил, что хост неверен.

Я использовал, smtp.google.com

вместо smtp.gmail.com

Слишком глупо, но это случилось со мной.

0 голосов
/ 15 ноября 2010

Не знаю, поможет ли это, но я запустился с той же проблемой на моем локальном компьютере (Windows). Для решения этой проблемы мне пришлось скопировать две dll из каталога php в system32 (ssleay.dll и libeay.dll) и удалить расширение php_openssl.dll в моей конфигурации apache. Там может быть подобное решение для Linux. Я предлагаю вам связаться с хостингом, потому что вполне возможно, что вы не сможете выполнить это решение на виртуальном хостинге.

...