我在DEV机器上使用fedora,并通过codeignigter发送邮件
sendmail工作正常,PHP mail()函数也正常工作
但由于某种原因,codeigniter不能使用它在php.ini中配置的以下设置:
$config['protocol'] = 'sendmail';
$config['mailpath'] = '/usr/sbin/sendmail';
我得到的错误是:
Exit status code: 64
Unable to open a socket to Sendmail. Please check settings.
Unable to send email using PHP Sendmail. Your server might not be configured to send mail using this method.
由于
答案 0 :(得分:3)
您获得的错误不是CodeIgniter错误,而是PHP错误。
如果您正在使用本地开发服务器,比如说您家中的桌面,那么您的Fedora安装很可能没有设置任何邮件系统。尝试将协议设置为SMTP并在config / email.php文件中设置服务器/用户/传递,如下所示:
$config['protocol'] = 'smtp';
$config['smtp_host'] = 'smtp.isp.net';
$config['smtp_user'] = 'username';
$config['smtp_pass'] = 'password';
或者,我相信您也可以在php.ini文件中进行设置,并使用服务器范围的设置。
答案 1 :(得分:1)
最常见的问题是没有电子邮件用户设置...你提到DEV服务器 - 仔细检查它。如果发件人不存在,Mail()将不会发送电子邮件