首先是一些信息:
mail()在这种情况下使用.对于我所有其他项目,我已经使用SMTP邮件.我已经将站点超时问题与PHP mail()函数隔离开来了.这是我服务器上test.php文件中唯一的代码行:
<?php mail('rudolf@geardev.de', 'test', 'test');
Run Code Online (Sandbox Code Playgroud)
这似乎是无止境的,然后在40秒后被mod_cgi终止.命令
php -r "mail('rudolf@geardev.de', 'test', 'test');"
Run Code Online (Sandbox Code Playgroud)
在命令行上立即发送电子邮件.
请告诉我你想看哪些日志文件,Apache日志是这样的:
[Thu Jan 17 12:17:00 2013] [warn] [client 178.15.148.43] mod_fcgid: read data timeout in 40 seconds
[Thu Jan 17 12:17:00 2013] [error] [client 178.15.148.43] Premature end of script headers: test.php
Run Code Online (Sandbox Code Playgroud)
我认为问题是我chmod -R 775几天前意外地在根目录上运行了.除了这一个,我已经修复了所有错误.
最有可能你使用2个不同的php.ini版本.一个用于cli,一个用于cgi.我相信Debian有这个设置.
确保您的cli和cgi版本具有相同的电子邮件配置,并且它将起作用.
邮件配置密钥是:[邮件功能]
另一种可能性是您的Web用户无权访问执行 sendmail.
还检查假脱机权限(更新)