.net发送邮件问题。不能连接到邮件服务器
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了.net发送邮件问题。不能连接到邮件服务器相关的知识,希望对你有一定的参考价值。
.net 发送邮件问题 不能连接到服务器主机
我用.net 写得发送邮件程序 如下:
System.Net.Mail.SmtpClient sc = new System.Net.Mail.SmtpClient();//服务器发件箱的地址、端口
System.Net.NetworkCredential nc = new System.Net.NetworkCredential();//验证的用户名和密码
sc.Credentials = nc;
nc.UserName = "UserName@163.com";
nc.Password = "******";
sc.Host = "smtp.163.com";
sc.Port = 25;
System.Net.Mail.MailMessage mm = new System.Net.Mail.MailMessage(new System.Net.Mail.MailAddress("test@163.com", "Mr.test1"), new System.Net.Mail.MailAddress("test@qq.com", "Mr.test"));
mm.Subject = "主题";
mm.Body = "邮件正文";
sc.Send(mm);
在本地测试 可以发送邮件 可是一旦发布到服务器 就报出如下错误:
A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond 123.125.50.135:25
它是说无法连接到远程 stmp.163.com 服务器主机,,, 参考技术A nc.UserName = "UserName";后面不要加@163.com 参考技术B 你的服务器配置允许连接到163去吗
在 Codeigniter 中无法发送电子邮件 - fsockopen():无法连接到 ssl://smtp.gmail.com:465(连接被拒绝)
【中文标题】在 Codeigniter 中无法发送电子邮件 - fsockopen():无法连接到 ssl://smtp.gmail.com:465(连接被拒绝)【英文标题】:in Codeigniter Unable to send email - fsockopen(): unable to connect to ssl://smtp.gmail.com:465 (Connection refused) 【发布时间】:2017-03-13 09:39:29 【问题描述】:etting fsockopen():发送电子邮件时无法连接到 ssl://smtp.gmail.com:465(连接被拒绝)。
我的电子邮件控制器是:
public function send()
$from = "abc@gmail.com";
$to = $this->input->post('email');
date_default_timezone_set("Asia/Kolkata");
$ci = get_instance();
$ci->load->library('email');
$config['protocol'] = "smtp";
$config['smtp_host'] = "ssl://smtp.gmail.com";
$config['smtp_port'] = "465";
$config['smtp_user'] = "abc@gmail.com";
$config['smtp_pass'] = "Mypwd";
$config['mailpath'] = "/usr/sbin/sendmail";
$config['mailtype'] = "text";
$config['newline'] = "\r\n";
$ci->email->initialize($config);
$this->email->from($from, 'Your Name');
$this->email->to($to);
$this->email->subject('Email Test');
$this->email->message('Testing the email class.');
//Send mail
if($this->email->send())
$this->load->view('pages/successfully');
else
echo "Error in sending Email.";
show_error($this->email->print_debugger());
遇到了 PHP 错误
严重性:警告
消息:无法修改标头信息 - 标头已发送(输出开始于 /home/simt/public_html/system/core/Exceptions.php:272)
文件名:core/Common.php
行号:568
回溯:
文件:/home/simt/public_html/application/controllers/Email.php 线路:46 函数:显示错误
文件:/home/simt/public_html/index.php 线路:315 函数:require_once
【问题讨论】:
【参考方案1】:连接被拒绝意味着与对等方的连接被拒绝。这是因为服务器要么不希望在端口上建立连接,要么是因为防火墙阻止了连接。在您的情况下,这可能是最后一个,因此请检查可能会阻止本地计算机以及网络上的访问的防火墙。也可能是服务器前面的防火墙或服务器本身阻止了访问,例如,如果您的系统位于某个以发送垃圾邮件而闻名的黑名单上。
【讨论】:
我从其他系统尝试,同样的错误。那我可以和服务器提供商谈谈吗? @harvinder:我不知道您的软件在哪里运行,但是可以,如果有其他人管理系统并可能配置防火墙,请与他们交谈。 @harvinder:是的,godaddy 可能会阻止这个端口。看看***.com/a/1583409/3081018。以上是关于.net发送邮件问题。不能连接到邮件服务器的主要内容,如果未能解决你的问题,请参考以下文章
Go:连接到 SMTP 服务器并在一个连接中发送多封电子邮件?