2

我正在尝试在带有 iss7 的 windows 上的服务器中使用函数 mail ,我收到了这个警告,它不允许我发送邮件:

Warning: mail(mail.log): failed to open stream: Permission denied in xxxx 

那条线是:

mail("mail@myserver.com", "subject", 'body',"From: mail2@myserver.com")

在 php.ini 我已经配置了 SMTP 服务器、端口和 sendmail_from,如下所示:

; http://php.net/smtp
SMTP = 128.x.x.xxx
; http://php.net/smtp-port
smtp_port = 110

; For Win32 only.
; http://php.net/sendmail-from
sendmail_from = mymail@myserver.com

; The path to a log file that will log all mail() calls. Log entries include
; the full path of the script, line number, To address and headers.
mail.log = mail.log

我还在 C:/php/ 中创建了一个名为“mail.log”的文件,并且我已经更改了所有用户的读写权限。

此外,在phpinfo () safe_mode 是Off

我目前正在使用 PHPMailer 发送邮件,但是我想用邮件功能尝试它太慢了。

你知道我做错了什么吗?谢谢。

4

1 回答 1

2

您的文件中应该有一个mail.log条目,该条目php.ini应该记录所有mail()函数调用。搜索它,如果你没有这一行,那么它采用了一些奇怪的默认值或以前定义的值,所以你最好定义它并将它指向你在 PHP 文件夹中创建的文件,并希望分配好的权限。有关更多信息,请查看phpinfo()有关 mail.log 的内容。

更多信息:邮件配置

于 2012-09-17T14:27:11.330 回答