Mail发送邮件
2018-11-28 本文已影响0人
IARNO
本来是想用阿里云服务器测试发送邮箱,可是由于阿里云端口等问题,无奈只好在本地搭建虚拟机进行测试。
本文是通过163邮箱
给QQ邮箱
的案例讲解
Linux mail
命令发送配置如下:
- 在
/etc/mail.rc
中增加如下代码
set from=xxx@163.com #您的163邮箱
set smtp=smtp.163.com #不需修改
set smtp-auth-user=xxx@163.com #您的163邮箱,同第一行
set smtp-auth-password=xxxxxx #授权码(如下讲解获取步骤)
set smtp-auth=login #不需修改
-
163邮箱获取授权码:
image.png -
我已经设置过
image.png -
接受的QQ邮箱将发送的网页云邮箱设置为白名单
image.png
邮件发送测试
- 终端输入
echo "Hello" | mail -s "标题" 1355706302@qq.com
-
效果
image.png
PHP使用mail
函数发送
注:php使用mail
函数需要安装邮件服务,本案例是安装的sendmail
,并且sendmail
服务为启动状态
-
安装命令
yum install sendmail
-
配置
php.ini
编辑vi /usr/local/php/etc/php.ini
查找;sendmail_path =
,替换为sendmail_path = /usr/sbin/sendmail -t -i
-
sendmail服务相关命令
service sendmail restart #重启
service sendmail status #状态
service sendmail stop #停止
- php代码
<?php
$to = "1355706302@qq.com"; #发送给QQ邮箱
$subject = "Test mail";
$message = "Hello! This is a simple email message.";
$from = "XXX@163.com"; #来自163邮箱
$headers = "From: $from";
mail($to,$subject,$message,$headers);
echo "Mail Sent.";
-
效果如下
image.png