0

每当我使用 Email::Send::Gmail 运行简单的发送电子邮件功能时,我都会收到此错误:

[2013 年 1 月 28 日星期一 11:37:57] [错误] [客户端 31.171.245。] 发送电子邮件时出错:Email::Send::Gmail: 在 /usr/local/share/perl5/Email/Send.pm 第 252 行连接到服务器 smtp.gmail.com 时出错,引用者:http: //**.cgi

但是,从命令行运行时完全相同的代码正在工作。从命令行远程登录时可以使用 smtp.gmail.com。这是因为坚持还是我错过了什么?

4

2 回答 2

0

好吧,我明白了。似乎 CentOS 上的 selinux 阻止了来自 httpd 的外部连接,因此脚本没有连接。

你需要输入这个

setsebool -P httpd_can_network_connect=1

为了连接。

于 2013-01-29T13:53:42.070 回答
-1

尝试(在您的 cgi 脚本中)这样做:

use Net::SMTP::SSL;
Net::SMTP::SSL->new( 'smtp.gmail.com', Port => 465, Debug => 1 );

并查看调试信息是否告诉您任何有用的信息。

您的 cgi 脚本是否可能使用不同的 perl,安装了不同的模块?

于 2013-01-28T11:36:54.693 回答