我正在使用Ion Auth并尝试实现忘记密码功能,该功能依赖于从 CI 发送的电子邮件。我的 LAMP 服务器在一个共享的 cPanel 帐户上,并且使用sendmail
. 但是,我可以php.ini
在目录中使用我自己的文件覆盖任何 PHP 设置public_html
。
根据用于配置电子邮件发送的CodeIgniter 2 文档,我已经完成了以下操作...
1)创建了一个名为的文件位于application/config/email.php
2) email.php
包含此代码:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/*
| -------------------------------------------------------------------
| EMAIL SENDING SETTINGS
| -------------------------------------------------------------------
*/
$config['protocol'] = 'sendmail';
/* End of file email.php */
/* Location: ./application/config/email.php */
3)在application/config/ion_auth.php
文件中,我将此值设置为TRUE
$config['use_ci_email'] = TRUE;
电子邮件已成功发送,但我在所有页面上都收到各种 PHP 错误警告。
这些出现在所有页面上,有时连续出现两到三次:
遇到 PHP 错误
严重性:警告
消息:date() [function.date]:依赖系统的时区设置是不安全的。您需要使用 date.timezone 设置或 date_default_timezone_set() 函数。如果您使用了这些方法中的任何一种,但仍然收到此警告,您很可能拼错了时区标识符。我们为 'EST/-5.0/no DST' 选择了 'America/New_York'
文件名:库/Email.php
行号:704
遇到 PHP 错误
严重性:警告
消息:date() [function.date]:依赖系统的时区设置是不安全的。您需要使用 date.timezone 设置或 date_default_timezone_set() 函数。如果您使用了这些方法中的任何一种,但仍然收到此警告,您很可能拼错了时区标识符。我们为 'EST/-5.0/no DST' 选择了 'America/New_York'
文件名:库/Email.php
行号:709
除了上述之外,这两个在忘记密码表单提交后也会出现:
遇到 PHP 错误
严重性:警告
消息:无法修改标头信息 - 标头已发送(输出开始于 /home/username/codeigniter/system/core/Exceptions.php:185)
文件名:库/Session.php
行号:675
遇到 PHP 错误
严重性:警告
消息:无法修改标头信息 - 标头已发送(输出开始于 /home/username/codeigniter/system/core/Exceptions.php:185)
文件名:helpers/url_helper.php
行号:540
我不确定为什么会收到这些错误警告,或者我应该如何配置我的电子邮件发送选项。我在文档中看不到与这些特定警告消息相关的任何其他电子邮件发送选项。当我删除我的config/email.php
文件并将 Ion Auth 设置use_ci_email
为FALSE
时,错误警告消失了。
我哪里做错了?