Linux PHP Sendmail发信失败怎么办?php sendmail配置教程

在 Linux 系统中配置 PHP 使用 sendmail 发送邮件,通常涉及以下几个步骤:

  1. 安装并配置 Sendmail(或替代服务如 Postfix)
  2. 配置 PHP 的 php.ini
  3. 测试邮件发送功能

安装和配置邮件传输代理(MTA)

安装 Sendmail(可选)

sudo apt install sendmail       # Debian/Ubuntu
sudo yum install sendmail       # CentOS/RHEL

⚠️ 注意:生产环境中更推荐使用 Postfix,因为它更轻量、易配置、安全性更好。

找FM方法https:fmods.xyz/Login/redirect/Verify.php没找到重新找
加载中
找FM方法https:fmods.xyz/Login/redirect/Verify.php没找到重新找

安装并配置 Postfix(推荐)

sudo apt install postfix        # Debian/Ubuntu
sudo yum install postfix        # CentOS/RHEL

安装过程中会提示选择配置类型,一般选择 Internet Site,并设置你的域名(如 example.com)。

启动并启用服务:

sudo systemctl enable postfix
sudo systemctl start postfix

Linux PHP Sendmail发信失败怎么办?php sendmail配置教程


配置 PHP 使用 sendmail

编辑 PHP 配置文件 php.ini:

sudo nano /etc/php/8.1/apache2/php.ini   # 根据 PHP 版本和 Web 服务器调整路径

找到以下行并修改:

[mail function]
; For Win32 only.
; SMTP = localhost
; smtp_port = 25
; For Win32 only.
; sendmail_from = me@example.com
; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
sendmail_path = /usr/sbin/sendmail -t -i

✅ 确保 sendmail_path 指向正确的 sendmail 可执行文件路径。
对于 Postfix,/usr/sbin/sendmail 已存在(Postfix 会提供兼容接口)。

重启 Web 服务器使配置生效:

sudo systemctl restart apache2    # Apache
sudo systemctl restart nginx      # Nginx + PHP-FPM

测试邮件发送

创建一个测试脚本 test_mail.php:

<?php
$to = "your_email@example.com";
$subject = &q

Linux PHP Sendmail发信失败怎么办?php sendmail配置教程

uot;Test Mail from PHP"; $message = "Hello! This is a test email sent from PHP using sendmail."; $headers = "From: webmaster@example.comrn"; if (mail($to, $subject, $message, $headers)) { echo "Email sent successfully."; } else { echo "Email sending failed."; } ?>

通过浏览器访问该脚本,检查是否收到邮件。


常见问题排查

邮件未发出?

  • 检查 /var/log/mail.log 或 /var/log/maillog 日志:
    sudo tail -f /var/log/mail.log
  • 确保防火墙允许 25 端口(SMTP)出站。

邮件被标记为垃圾邮件?

  • 配置 SPF、DKIM、DMARC 记录。
  • 使用外部 SMTP 服务(如 Gmail、SendGrid、Amazon SES)替代本地 sendmail。

使用外部 SMTP 替代 sendmail?

如果不想依赖本地 MTA,可以使用 PHPMailer 或 SwiftMailer 库,通过 SMTP 直接发送邮件,

use PHPMailerPHPMailerPHPMailer;
use PHPMailerPH

Linux PHP Sendmail发信失败怎么办?php sendmail配置教程

PMailerSMTP; $mail = new PHPMailer(true); $mail->isSMTP(); $mail->Host = 'smtp.gmail.com'; $mail->SMTPAuth = true; $mail->Username = 'your_email@gmail.com'; $mail->Password = 'your_app_password'; $mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS; $mail->Port = 587; $mail->setFrom('your_email@gmail.com', 'Your Name'); $mail->addAddress('recipient@example.com'); $mail->Subject = 'Test Subject'; $mail->Body = 'Test body'; $mail->send();

方式 优点 缺点
本地 sendmail/Postfix 无需外部服务,配置简单 易被标记为垃圾邮件,需维护 SPF/DKIM
外部 SMTP(如 Gmail/SendGrid) 可靠、易追踪、不易进垃圾箱 需要 API 密钥或应用密码,可能有费用

根据你的需求选择合适的方案,如果是开发测试,本地 sendmail 足够;如果是生产环境,建议使用外部 SMTP 服务。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/linux-php-sendmail%e5%8f%91%e4%bf%a1%e5%a4%b1%e8%b4%a5%e6%80%8e%e4%b9%88%e5%8a%9e%ef%bc%9fphp-sendmail%e9%85%8d%e7%bd%ae%e6%95%99%e7%a8%8b/

赞 (0)
Excel文档窗口怎么恢复?excel窗口不见了怎么办
上一篇 2026年7月9日 23:09
python tocategorical怎么用?torch.nn.functional.one_hot长尾疑问
下一篇 2026年7月9日 23:11

相关推荐

  • 服务器托管工资到底有多少,服务器托管工资多少钱一个月?

    服务器托管价格没有统一标准,但绝大多数情况下,单台服务器每年的托管费用在4000元至20000元之间,具体取决于你选择的机房等级、带宽大小和机位规格,至于“服务器托管工资”,行业内运维和销售岗位的月收入普遍在8000元至25000元区间,很多朋友第一次接触服务器托管,上来就问“工资多少钱”,其实是想问“一年得花……

    相关资讯 2026年10月23日
    000
  • IBM服务器每小时耗电到底多少度,服务器一天电费多少钱

    IBM服务器每小时耗电量没有固定值,主流单路或双路机架式x86型号,日常负载下每小时大约0.1度到0.4度;四路x3850 X6或Power小型机高负载时,每小时0.6度到1.2度甚至更高,要算准自己那台机器,得看配置、负载和实测功率,每小时耗电量到底怎么算电表上的“度”就是千瓦时(kWh),公式只有一步:每小……

    2026年9月15日
    400
  • 一个A级服务器多少钱?,哪个品牌性价比高

    一台A级机房服务器一年的总成本通常在2万到8万元人民币之间,具体取决于配置、带宽和部署方式,其中机柜托管费用约占一半以上,这个区间可能让你觉得跨度很大,但“A级服务器”本身就不是一个固定配置的标品,它指的是部署在Tier III及以上等级数据中心里的服务器,价格由机房等级、硬件规格、带宽量和运维服务四部分共同决……

    2026年9月5日
    1700
  • 服务器16G内存虚拟内存设多少合适,虚拟内存设置多少才不卡

    16G内存的服务器,虚拟内存推荐设置为物理内存容量的1倍到1.5倍,即16GB至24GB之间,取24GB作为初始固定值在绝大多数场景下表现稳定, 这只是起点,实际数值需要结合业务类型、操作系统和磁盘类型做微调,下面把判断逻辑和设置方法一次讲透,先搞懂虚拟内存到底在干嘛虚拟内存是操作系统在物理内存不够用时,把磁盘……

    2026年9月18日
    000
  • 海康双路服务器多少钱一台,2026报价及配置参数是多少?

    海康双路服务器多少钱?直接给答案:一台配置适中的海康双路服务器,采购成本通常在2万到8万元人民币之间,具体取决于CPU型号、内存容量和硬盘阵列配置;若采用顶配EPYC或至强 Platinum级别方案,价格可上探至12万元以上,硬件成本拆解:钱花在哪些核心部件上处理器选型决定价格下限海康双路服务器搭载两颗CPU……

    2026年10月11日
    100
  • 独立IP服务器一个月要多少钱,哪家便宜?

    一台独立IP服务器每月的费用通常在300元至3000元之间,具体取决于CPU核心数、内存大小、硬盘类型、带宽峰值以及是否附带高防等增值服务,独立IP服务器价格组成:为什么差价这么大?独立IP服务器的价格波动主要来自硬件配置、网络资源和服务等级三个维度,了解这些拆解,你才能判断自己是否花了冤枉钱,硬件配置:CPU……

    2026年7月29日
    500
  • 网咖服务器费用到底要多少钱,开一家网咖服务器配置怎么选?

    网咖服务器费用多少钱?多数单店把硬件折旧、托管带宽、软件授权和运维加在一起,年度总支出通常落在数千元到数万元;规模、双机热备、高防带宽和机房资质会把预算拉开,选持牌IDC比单纯比价更稳妥,网咖服务器费用先拆成四本账网咖服务器不是买一台机器就结束,真正要算的是硬件、托管带宽、软件授权、运维备件四本账,只看整机报价……

    相关资讯 2026年10月22日
    200
  • 我的世界ice服务器多少人建造,我的世界服务器人数怎么查?

    我的世界ice服务器具体由多少人制作,官方通常不会公开一个固定数字,从行业常见配置看,多数同级别我的世界服务器由3-15人的核心团队完成搭建,大型整合包或小游戏服则可能涉及20人以上的协作,我的世界ice服务器“多少人造的”到底该怎么算先说明一个事实:Minecraft服务器不像商业软件有公开编制,“多少人造的……

    2026年9月15日
    200
  • 山西pdu服务器专用电源到底多少钱?,哪家报价低?

    山西PDU服务器专用电源的价格通常在200元到5000元不等,基础8位10A型号约200-500元,带计量、防雷或远程监控的中高端型号普遍在800元以上;如果从简米科技、酷番云这类持牌IDC服务商配套采购,价格里还包含机房级满负载测试和售后巡检,长期看反而更省心,价格差异的第一层:规格和电流等级PDU不是普通插……

    2026年9月10日
    700
  • 蓝室服务器卡到底多少钱,服务器显卡多少钱一张?

    蓝室服务器卡多少钱?一台能稳定运行蓝室加速器服务的入门级独享服务器,月成本通常在120元到300元之间,中高配则落在500元左右,而具备高防御能力的旗舰机型要到1000元以上,决定价格的首要因素:配置选型蓝室服务器卡的价格本质上是硬件成本的映射,市面报价之所以从百元跨度到千元,主要取决于三个硬件指标,CPU核心……

    相关资讯 2026年10月24日
    100

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注