You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WAMP Server批量模式无法发邮件但浏览器模式正常问题排查

问题:WAMP命令行运行PHP无法发送邮件,提示“系统找不到指定路径”

之前在Linux服务器运行的PHP批量程序迁移到Windows的WAMP环境后,用BAT文件以批量模式运行时,数据库更新等功能正常,但结尾无法发送邮件,批处理结束时提示“系统找不到指定路径”。目前可以通过浏览器Meta Refresh每分钟运行程序,但希望用任务计划替代原Cron任务。

以下是测试代码和BAT文件:

PHP测试代码

<?php
echo "Start of mail test";
$headers   = array();
$headers[] = "MIME-Version: 1.0";
$headers[] = "Content-type: text/html; charset=iso-8859-1";
$headers[] = "From: QSOMAP <example@gmail.com>";
//$headers[] = "Bcc: Mike Saeger<example@gmail.com>";
$headers[] = "Reply-To: N9MS <example@gmail.com>";
$headers[] = "X-Mailer: PHP/" . phpversion();
mail("example@gmail.com", 'Feedback on QSOMAP Upload', "<b>This upload was made possible by a donation from ".strtoupper("Mike Saeger")."</b><br>"."This is text". "The following pins were added to your map:<br>" . "processed", implode("\n", $headers));
?>

BAT文件内容

C:\wamp64\bin\php\php7.4.33\php.exe C:/wamp64/www/mailtest.php

通过浏览器访问http://[myipaddress]/mailtest.php可正常发邮件,仅在BAT命令运行时mail()函数失效。


原因分析

核心问题是Windows下PHP的CLI模式与Apache模式使用的是不同的php.ini配置文件:

  • 浏览器访问时,PHP通过Apache加载配置,使用的是Apache目录下的php.ini(通常路径为C:\wamp64\bin\apache\apacheX.X.X\bin\php.ini),这个配置里已经正确设置了邮件发送的参数,所以能正常发信。
  • 命令行(CLI)模式运行时,PHP使用的是PHP安装目录下的php.ini(即C:\wamp64\bin\php\php7.4.33\php.ini),该文件中邮件相关的配置可能未正确设置,或者指定的sendmail路径不存在,导致执行mail()函数时找不到依赖程序,触发“系统找不到指定路径”的错误。

解决步骤

  1. 打开CLI模式的php.ini文件:直接编辑C:\wamp64\bin\php\php7.4.33\php.ini。
  2. 配置邮件发送参数:找到[mail function]段落,参考Apache的php.ini配置进行修改:
    • 如果用SMTP服务器发送(比如Gmail),设置以下参数:
      [mail function]
      ; For Win32 only.
      SMTP=smtp.gmail.com
      smtp_port=587
      sendmail_from=example@gmail.com
      
      注意:Gmail需要开启应用专用密码(低安全应用已被默认禁用)。
    • 如果使用sendmail工具(如FakeSendmail),确保sendmail_path配置的路径正确:
      sendmail_path = "C:\wamp64\sendmail\sendmail.exe -t"
      
      路径中如果有空格,必须用双引号包裹。
  3. 保存配置后重新运行BAT文件,测试邮件发送功能。

内容的提问来源于stack exchange,提问作者user3384413

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 14:42:56