Email :: Send ::如果从cgi运行,Gmail无法连接到服务器

时间:2013-01-28 11:04:30

标签: perl email cgi connect send

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

[Mon Jan 28 11:37:57 2013] [错误] [客户端31.171.245。]发送电子邮件时出错:Email :: Send :: Gmail:错误连接到服务器smtp.gmail.com at / usr / local / share / perl5 / Email / Send.pm第252行,referer:http:// **。cgi

但是,从命令行运行时,完全相同的代码正在运行。从命令行telneting时可以使用smtp.gmail.com。这是因为持久性还是我错过了什么?

2 个答案:

答案 0 :(得分:0)

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

您需要输入此

  

setsebool -P httpd_can_network_connect = 1

为了连接。

答案 1 :(得分:-1)

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

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

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

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