kaimzxj 2019-01-04 10:37 采纳率: 100%
浏览 1349
已采纳

用ASP写的邮件发送,在自己电脑的iis上部署可以发送,但是部署到服务器上不能发送了

图片说明

private static String sendingMail(Object textContent, Object emailAddress)
{

            String message = "邮件发送成功";

            //string smtpService = "smtp.sheny.com.cn";

            //string sendEmail = ".com.cn";
            //string sendpwd = "";

            string smtpService = "smtp.mxhichina.com";

            string sendEmail = "";
            //string sendpwd = "ouaqlwlubykxbdbe";
            string sendpwd = "";
            //确定smtp服务器地址 实例化一个Smtp客户端
            SmtpClient smtpclient = new SmtpClient();
            smtpclient.Host = smtpService;


            //确定发件地址与收件地址
            MailAddress sendAddress = new MailAddress(sendEmail);
            //MailAddress receiveAddress = new MailAddress("@qq.com");
            MailAddress receiveAddress = new MailAddress(emailAddress.ToString());
            //构造一个Email的Message对象 内容信息
            MailMessage mailMessage = new MailMessage(sendAddress, receiveAddress);
            mailMessage.Subject = "订舱信息" + DateTime.Now;
            mailMessage.SubjectEncoding = System.Text.Encoding.UTF8;
            //mailMessage.Body = "测试邮件发送成功!!!";
            mailMessage.Body = textContent.ToString();
            mailMessage.BodyEncoding = System.Text.Encoding.UTF8;

            //邮件发送方式  通过网络发送到smtp服j
            smtpclient.DeliveryMethod = SmtpDeliveryMethod.Network;

            //如果服务器支持安全连接,则将安全连接设为true
            smtpclient.EnableSsl = true;
            try
           {
            //是否使用默认凭据,若为false,则使用自定义的证书,就是下面的networkCredential实例对象
            smtpclient.UseDefaultCredentials = false;

            //指定邮箱账号和密码,需要注意的是,这个密码是你在QQ邮箱设置里开启服务的时候给你的那个授权码
            NetworkCredential networkCredential = new NetworkCredential(sendEmail, sendpwd);
            smtpclient.Credentials = networkCredential;
            ServicePointManager.ServerCertificateValidationCallback =
            delegate (Object obj, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors) { return true; };
            //发送邮件
            smtpclient.Send(mailMessage);


        }
    catch (System.Net.Mail.SmtpException ex) { message = ex.Message; }
    return message;
}
  • 写回答

1条回答

  • threenewbee 2019-01-04 11:03
    关注

    网络的问题,主要是防火墙还有网络连接是否通,还有你的服务器是否被对方SMTP服务器拉黑了。一些小机房的服务器,因为你的“邻居”总是在乱发垃圾邮件,所以邮件服务器提供商可能封掉了这个网段全部的ip,那么你只能换一个机房了。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 R语言Rstudio突然无法启动
  • ¥15 关于#matlab#的问题:提取2个图像的变量作为另外一个图像像元的移动量,计算新的位置创建新的图像并提取第二个图像的变量到新的图像
  • ¥15 改算法,照着压缩包里边,参考其他代码封装的格式 写到main函数里
  • ¥15 用windows做服务的同志有吗
  • ¥60 求一个简单的网页(标签-安全|关键词-上传)
  • ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值