Codeigniter电子邮件功能和Justhost SMTP

时间:2013-02-12 16:23:54

标签: codeigniter smtp

我有人使用PHP和Codeigniter框架为我建立一个网站。在测试服务器上一切正常,但是现在,一旦网站转移到Justhost,电子邮件功能就无法工作。首先,我认为我没有使用正确的SMTP设置,但它们很好(支持看看)。

基本上,所有者可以将他的财产放在网站上(例如:http://goo.gl/AZcrj),当访问者填写底部的联系表格时,会将电子邮件发送给所有者的电子邮件地址,并且他可以回复访客发送电子邮件。

我第一次使用Justhost SMTP设置并对其进行了测试,发送了电子邮件。但从那时起,直到现在,当我尝试通过联系表单发送邮件时,我总是收到错误。我甚至尝试使用Gmail SMTP设置,同样的事情发生了:\

这是代码,有人有任何线索吗? 顺便说一句,我是一个PHP菜鸟,所以我不太了解,但我尽力解释

public function send_mail($res)
{
    $this->load->library('email');
    $config['protocol']    = 'smtp';
    $config['smtp_host']    = 'sslsmtp.gmail.com'; --- i tried with ssl://smtp.gmail.com, same thing happens
    $config['smtp_port']    = '465';
    $config['smtp_timeout'] = '7';
    $config['smtp_user']    = 'email';
    $config['smtp_pass']    = 'password';


    $this->email->initialize($config);

    $this->email->from($res['sender_email'], $res['sender_name']);
    $this->email->to($res['reciever']);
    $this->email->reply_to($res['sender_email'], $res['sender_name']);

    $this->email->subject('Email from site.');
    $this->email->message($res['message']);

    if($this->email->send()) {
        return true;
    } else {
        return false;
    }
    //configure mail agent...
} 

1 个答案:

答案 0 :(得分:2)

似乎Justhost阻止了共享IP的传出端口。我遇到了同样的问题,并在搜索答案时遇到了这个链接(https://my.justhost.com/cgi/help/405)。

从以上链接:

  

传出端口被阻止

     

Just Host通过共享托管限制端口访问   环境。在此环境中,服务器上的每个帐户共享一个   单个IP地址。因此,大多数端口都被阻止,因为没有   单个帐户被分配了该框的IP地址。

     

要访问这些端口,必须租用专用IP   通过Just Host解决。