私は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 エラー警告が表示されます。
これらはすべてのページに表示され、場合によっては 2 ~ 3 回続けて表示されます。
PHP エラーが発生しました
重大度: 警告
メッセージ: date() [function.date]: システムのタイムゾーン設定に頼るのは安全ではありません。date.timezone 設定または date_default_timezone_set() 関数を使用する必要があります。これらの方法のいずれかを使用してもこの警告が表示される場合は、タイムゾーン識別子のスペルが間違っている可能性があります。代わりに、「EST/-5.0/no DST」に「America/New_York」を選択しました
ファイル名: libraries/Email.php
ライン番号: 704
PHP エラーが発生しました
重大度: 警告
メッセージ: date() [function.date]: システムのタイムゾーン設定に頼るのは安全ではありません。date.timezone 設定または date_default_timezone_set() 関数を使用する必要があります。これらの方法のいずれかを使用してもこの警告が表示される場合は、タイムゾーン識別子のスペルが間違っている可能性があります。代わりに、「EST/-5.0/no DST」に「America/New_York」を選択しました
ファイル名: libraries/Email.php
ライン番号: 709
上記に加えて、これら 2 つは、パスワードを忘れた場合のフォームが送信された後にも表示されます。
PHP エラーが発生しました
重大度: 警告
メッセージ: ヘッダー情報を変更できません - ヘッダーは既に送信されています (出力は /home/username/codeigniter/system/core/Exceptions.php:185 で開始)
ファイル名: libraries/Session.php
ライン番号: 675
PHP エラーが発生しました
重大度: 警告
メッセージ: ヘッダー情報を変更できません - ヘッダーは既に送信されています (出力は /home/username/codeigniter/system/core/Exceptions.php:185 で開始)
ファイル名: helpers/url_helper.php
ライン番号: 540
これらのエラー警告が表示される理由や、メール送信オプションを設定する方法がわかりません。ドキュメントには、これらの特定の警告メッセージに関連する他の電子メール送信オプションはありません。ファイルを削除してconfig/email.php
Ion Authuse_ci_email
を に設定するFALSE
と、エラー警告が消えます。
どこで私は間違えましたか?