无法与SwiftMailer中的主机smtp.gmail.com [#0]建立连接

时间:2018-03-15 01:58:47

标签: php php-7 iis-8 swiftmailer windows-server-2012-r2

我在尝试使用带有Gmail的swiftmailer发送测试电子邮件时收到错误“无法与主机smtp.gmail.com [#0]建立连接”。我的代码如下

<?php
require_once("./vendor/autoload.php");

$transport = (new Swift_SmtpTransport('smtp.gmail.com', 465,'ssl'))
  ->setUsername('my email')
  ->setPassword('my email password')
  ;

// Create the Mailer using your created Transport
$mailer = new Swift_Mailer($transport);

// Create a message
$message = (new Swift_Message('Wonderful Subject'))
  ->setFrom(['email from' => 'from Name'])
  ->setTo(['email to' => 'to Name'])
  ->setBody('Here is the message itself')
  ;

// Send the message
try{
  $result = $mailer->send($message);
}catch(Exception $e){
  echo $e->getMessage();
}
echo $result;

我的测试环境是Windows Server 2012(带有PHP7的IIS 8)。

但是当我在Ubuntu 16.04(安装了PHP7的Apache)环境中尝试相同的代码库时,它起作用了。为了使用gmail和SwiftMailer发送电子邮件,我是否应该对IIS服务器或Windows配置进行任何更改?

注意: 如果我使用与雅虎帐户相同的配置而不是Gmail帐户。然后就行了。

1 个答案:

答案 0 :(得分:0)

此服务器上是否运行了防火墙?

是否允许端口465上的出站连接?

您可能需要在防火墙上戳一个洞,以允许在端口465上连接到smtp.gmail.com(74.125.21.108和74.125.21.109)。