yandex smtp无法在codeigniter上工作(digitalocean + ubuntu + serverpilot)

时间:2016-07-24 20:54:12

标签: codeigniter email smtp yandex

我在localhost上发送电子邮件,但在服务器上没有相同的设置(digitalocean + serverpilot)。 启用了php的开放ssl支持。

  

php get“消息:fsockopen():无法连接到   ssl://smtp.yandex.com.tr:465(连接超时)

codeigniter framework get:

  

遇到以下SMTP错误:110连接超时   无法使用PHP SMTP发送电子邮件。您的服务器可能不是   配置为使用此方法发送邮件。

我的代码是:

 $config = Array('protocol' => 'smtp','smtp_host' => 'ssl://smtp.yandex.com.tr','smtp_port' => 465, 'smtp_user' => 'info@mydomain.com','smtp_pass' => 'mypass','mailtype'  => 'html', 'charset'   => 'utf-8');

$this->load->library('email');
$this->email->initialize($config);
$this->email->set_newline("\r\n");

$this->email->from('info@mydomain.com', 'test.com');
$this->email->to('testing@yandex.com');
$this->email->subject('test');


$this->email->message('test body');
$this->email->send();
 echo $this->email->print_debugger();

nslookup smtp.yandex.com:

  

服务器:2001:4860:4860 :: 8844地址:2001:4860:4860 :: 8844#53

     

非权威答案:smtp.yandex.com规范名称=   smtp.yandex.ru。姓名:smtp.yandex.ru地址:93.158.134.38   名称:smtp.yandex.ru地址:87.250.250.38姓名:smtp.yandex.ru   地址:213.180.204.38姓名:smtp.yandex.ru地址:213.180.193.38   姓名:smtp.yandex.ru地址:77.88.21.38

和telnet请求正常工作。

1 个答案:

答案 0 :(得分:0)

您的传出连接可能被防火墙阻止。

使用tcptraceroute之类的工具找到问题。