2

我在 IIS 6 Windows 2003 服务器上使用 PHP (5.2.9-2)。电子邮件服务器位于另一台机器 - Exchange 服务器上。当邮件功能尝试发送邮件时,我在 php 错误日志中得到以下信息: WARNING: mail() [function.mail]: Could not execute mail delivery program 'C:\WINDOWS\sendmail\sendmail.exe -t'在文件中:E:\www\mail.php

我使用来自 glob.com.au 的 sendmail。它已正确配置,因为尝试从命令行发送邮件是成功的。可以在此处找到 bat 文件的代码:PHP Sendmail not working on Windows Server 2003 (IIS)

The sendmail.ini :
smtp_server=MyServerIpAddress
smtp_port=25
smtp_ssl=auto
default_domain=mysite.com
error_logfile=error.log
debug_logfile=debug.log
auth_username=myusername
auth_password=mypass
force_sender=myusername@mysite.com

尝试在 php 中发送邮件后,debug.log 保持不变,但在命令行中发送时显示正确的内容。

The php.ini file is:
[mail function]
; For Win32 only.
SMTP = MyServerIpAddress
; For Win32 only.
sendmail_from = myusername@mysite.com
; For Unix only.  You may supply arguments as well (default: "sendmail -t -i").
sendmail_path = "C:\WINDOWS\sendmail\sendmail.exe -t"

有趣的是,当从命令行运行 php emailtest 脚本时,它也可以工作!所以只在网站上运行它不起作用......

我尝试使用和不使用强制发件人、sendmail_from、smtp_ssl auto/none/...

PHP 可执行文件和 sendmail 可执行文件位于 PATH 环境变量中(尝试了回显),但我没有重新启动服务器。两者都具有执行权限,我什至尝试让每个人都拥有它……什么都没有。我将可执行文件移入和移出 Windows 文件夹。每次操作后我都重新启动了 IIS 服务器,什么都没有……

任何提示将不胜感激

php mailtest 文件尝试从我的地址发送到相同的地址。

4

0 回答 0