2

我想在 localhost 中使用 php 脚本发送邮件。通过谷歌,我找到了 switchmailer。我使用 swiftmailer 尝试了以下代码。

<?php
require_once 'lib/swift_required.php';

$transport = Swift_SmtpTransport::newInstance('smtp.gmail.com', 587)
  ->setUsername('gmailid@gmail.com')
  ->setPassword('gmailpassword')
  ;
$mailer = Swift_Mailer::newInstance($transport);

// Create a message
$message = Swift_Message::newInstance('Wonderful Subject')
  ->setFrom(array('john@doe.com' => 'John Doe'))
  ->setTo(array('mail1@gmail.com', 'mail2@gmail.com' => 'A name'))
  ->setBody('Here is the message itself')
  ;

// Send the message
$result = $mailer->send($message);

?>

代码在激光线上给出错误$result = $mailer->send($message);

php 错误日志文件包含以下信息

[错误] [客户端 127.0.0.1] PHP 致命错误:在 /home/shashwat001/public_html/swift 中出现消息“无法与主机 smtp.gmail.com [网络无法访问 #101] 建立连接”的未捕获异常“Swift_TransportException” /lib/classes/Swift/Transport/StreamBuffer.php:259\n堆栈跟踪:\n#0 /home/shashwat001/public_html/swift/lib/classes/Swift/Transport/StreamBuffer.php(64): Swift_Transport_StreamBuffer->_establishSocketConnection ()\n#1 /home/shashwat001/public_html/swift/lib/classes/Swift/Transport/AbstractSmtpTransport.php(115): Swift_Transport_StreamBuffer->initialize(Array)\n#2 /home/shashwat001/public_html/swift/ lib/classes/Swift/Mailer.php(80): Swift_Transport_AbstractSmtpTransport->start()\n#3 /home/shashwat001/public_html/swift/index.php(31): Swift_Mailer->send(Object(Swift_Message))\n#4 {main}\n 在第 259 行的 /home/shashwat001/public_html/swift/lib/classes/Swift/Transport/StreamBuffer.php 中抛出

原因似乎是我连接到 LAN 网络,所以在代理服务器后面。关于 switchmailer 中的代理设置,网络上没有太多内容。

有没有办法使用代理服务器后面的本地主机在局域网以外的任何地方发送邮件?

4

1 回答 1

1

Google Mail 的正确端口是 465,Google 还使用 SSL 连接到 Gmail。

于 2013-03-04T18:11:10.263 回答