Centos中mail函数发送邮件缓慢解决办法

作者:袖梨 2022-11-14


因为需要经常备份网站的数据,所以了解并学习了下linux下如何通过shell来发送邮件,这里以CentOS

为例,使用mail命令来进行外部邮件的发送。mail命令的语法如下:

代码如下 复制代码

Usage: mail [-iInv] [-s subject] [-c cc-addr] [-b bcc-addr] to-addr ... [--

sendmail-options ...] mail [-iInNv] -f [name] mail [-iInNv] [-u user]


使用mail命令发送邮件,

1、直接使用shell当编辑器

代码如下 复制代码

mail -s "Hello from mzone.cc by shell" [email protected],this is the content of

mail.welcome to www.111com.net

第一行是输入的命令,-s表示邮件的主题,后面的[email protected]则是邮件的接收人,输入完这行

命令后回车,会进入邮件正文的编写,我们可以输入任何文字,比如上面的两行。当邮件正文输入完成

后,需要按CTRL+D结束输入,此时会提示你输入Cc地址,即邮件抄送地址,没有直接回车就完成了邮件

的发送。

重启完毕后可以发邮件了,但速度之慢,令人发指索性我就把这段函数给删了,后来发现这是我VPS的原

因,可以解决的,下面给出解决办法:

首先SSH连接VPS,后输入以下命令查看一下解析文件 : cat /etc/hosts

出现:

代码如下 复制代码

# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost.localdomain localhost
198.46.146.48 aiteyu


因为sendmail监听的是127.0.0.1,但却无法确认主机名aiteyu (因为在服务器

上/etc/sysconfig/network文件里记录的HOSTNAME是aiteyu),所以发送邮件就非常慢了。那么我就把

aiteyu这个主机名同时也加到127.0.0.1后面,变成:

代码如下 复制代码

# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost.localdomain localhost aiteyu
198.46.146.48 aiteyu

添加的方法是用vi命令:vi /etc/hosts

然后使用方向键移动光标到达想要修改的地方,添加好以后按一下ESC进入命令模式然后输入":wq"进行

保存和退出,然后重启VPS就搞定了。

相关文章

精彩推荐