我正在尝试使用带有iss7的Windows服务器中的函数邮件,我收到此警告,不允许我发送邮件:
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 关闭。
我目前正在使用PHPMailer发送邮件,但它太慢了,我想用邮件功能试一试。
你知道我做错了什么吗? 感谢。
答案 0 :(得分:2)
您的mail.log
文件中应该有一个php.ini
条目,该条目应记录所有mail()
函数调用。搜索它,如果你没有这一行,那么它需要一些奇怪的默认值或以前定义的值,所以你最好定义它并指向你在PHP文件夹中创建的文件,并希望分配好的权限。有关更多信息,请查看phpinfo()
对mail.log的评论。
更多信息:mail configuration。