无法与主机建立 SwiftMailer 连接 smtp.mailgun.org

SwiftMailer Connection could not be established with host smtp.mailgun.org

如果我使用

$transport = Swift_SmtpTransport::newInstance('localhost', 25);

然后它工作正常
但是当我使用这个设置时它不起作用

$transport = Swift_SmtpTransport::newInstance('smtp.mailgun.org', 465, 'ssl')
  ->setUsername('mailegun username')
  ->setPassword('mailgun password');

此问题出现在 "godaddy" 和 "bluehost" 帐户

但在使用 xampp 的本地主机中它工作正常

    <?php
    ini_set('display_errors', 1);
    ini_set('display_startup_errors', 1);
    error_reporting(E_ALL);
    require_once __dir__.'/vendor/swiftmailer/swiftmailer/lib/swift_required.php';
    $userBody="user mail";
    $userSub = "user subject";
    //$transport = Swift_SmtpTransport::newInstance('localhost', 25);
    $transport = Swift_SmtpTransport::newInstance('smtp.mailgun.org', 465, 'ssl')
      ->setUsername('mailegun username')
      ->setPassword('mailgun password'); 
// and also not working for gmail settings
// $transport = Swift_SmtpTransport::newInstance('smtp.gmail.com', 465, 'ssl')
   //   ->setUsername('gmail username')
     // ->setPassword('gmail password');


    $userMailer = Swift_Mailer::newInstance($transport);

    $message = Swift_Message::newInstance('Wonderful Subject')
          ->setFrom(array('ex1@gmail.com' => 'user1'))
          ->setTo(array('ex2@gmail.com'=> 'user2'))
          ->setBody('Test Message Body')
        ;

    $sendUserMail = $userMailer->send($message,$F);
    var_dump($sendUserMail);


    ?>

这是一个众所周知的问题:GoDaddy 不允许出站 SMTP;你必须通过他们的服务器中继。 PHPMailer troubleshooting guide 中对此进行了介绍,其原则仍然适用于 SwiftMailer。