我环顾四周,关于这个问题有很多问题,但我猜他们都有些具体,似乎没有一个我正在寻找的信息。
我们最近将电子邮件功能添加到我们的网站,以便我们可以向注册,忘记密码等的人发送自动电子邮件。这已正确设置并在Localhost上正常工作。
然后我们将网站推送到网络服务器,它无法正常工作。我们收到以下错误消息:
fsockopen()[function.fsockopen]:无法连接到smtp.sendgrid.net:587(拒绝连接)
接下来是一系列与依赖于上述连接的函数相关的其他错误。我们尝试过端口587,25和2525,但没有运气。
这是代码:
$this->load->library('email');
$this->email->initialize(array(
'protocol' => 'smtp',
'smtp_host' => 'smtp.sendgrid.net',
'smtp_user' => 'username',
'smtp_pass' => 'secretpwd',
'smtp_port' => 587,
'crlf' => "\r\n",
'newline' => "\r\n",
'mailtype' => 'html'
));
$this->email->from('info@domain.com', 'CompanyName');
$this->email->to($this->input->post('register_email'));
$this->email->subject('Application Confirmation');
$this->email->message('Hello');
$this->email->send()
答案 0 :(得分:4)
您的域名已开放中继!!!!!!! 如果您使用的是postfix,请将您的主配置文件更新为此
smtpd_recipient_restrictions =
reject_unknown_recipient_domain
permit_sasl_authenticated
reject_unauth_destination #this is important
permit
smtpd_sender_restrictions = reject_unknown_sender_domain
就你的问题而言,给我看一些代码。从这个角度来看,制作错误是很难的。