Linux上的服务器无法调用新浪邮箱发送邮件

问题背景:

在web网站开发中,有许多功能的实现需要发送邮件,比如用户的密码找回功能,可能就需要通过服务器向用户的注册邮箱发送验证码邮件来实现。而发送邮件功能可以通过很多方式实现,比如HTML中的mailto属性值,或者java代码,这两种方法网上有很多实例,我在这里就不浪费大家的流量了。当然,许多开发框架本身也是具有邮件发送功能的,你只需要调用其本身的方法。


问题描述:

我们通过不同方式,实现了网站的邮件发送功能,但是,当我们将工程发布在Linux服务器上后,点击发送按钮,却发现服务器后台日志报错,说是无法调用邮件服务。


问题解决:

问题产生的原因是因为Linux服务器(假如此服务器为192服务器)使用的是局域网,没有邮箱IP(假设此处使用的邮箱为新浪邮箱)访问权限,因此无法访问。按照以下步骤,即可解决该问题:

1、登录新浪邮箱,在邮箱的设置中,开启新浪邮箱的smtp和pop的功能。

2、向你公司的网络管理员申请开通192服务器的访问新浪邮箱的权限,也即是访问smtp.sina.com和pop.sina.com这两个域名对应IP的权限,这两个域名的对应的IP不唯一,你只需要各自获取一个IP即可。

获取方式:打开Windows的命令窗口,然后分别使用ping指令,获取smtp.sina.com和pop.sina.com这两个域名的IP,如下图所示:


可知smtp.sina.com域名的一个IP地址为202.108.6.242,以同样方式获取pop.sina.com的IP。

3、登录192服务器,首先,指令 cd /etc/sysconfig/network-scripts进入到该目录下 

然后,指令 vim ifcfg-eth0 进入该文件的vim编辑器;

如下图修改该文件内容,红框中的信息必须拥有,根据具体情况修改DNS1和DNS2的内容


上面配置信息完成后退出vim编辑器,

指令 service network restart 重启网络服务,该指令只是重启Linux的网络服务,对Linux上的工程没有影响。

4、修改192服务器的hosts配置文件,添加两条配置信息

210.83.210.155    smtp.sina.com
202.96.69.38        pop.sina.com
注意:上面的IP要根据实际情况修改,上面的域名要和IP一一对应,我这里只是写了一个示例,不要照抄。

5、在Linux上,指令 ping smtp.sina.com ,若可以ping通,那么,恭喜你,配置成功了,赶快试试你的工程能不能发送邮件吧。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值