Я использую Ion Auth и пытаюсь реализовать функцию забытого пароля, которая зависит от отправки электронного письма из CI. Мой сервер LAMP находится в общей учетной записи cPanel и использует sendmail
. Однако у меня есть возможность переопределить любые настройки PHP с помощью моего собственного файла php.ini
в каталоге 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/без летнего времени».
Имя файла: библиотеки/Email.php
Номер строки: 704
Произошла ошибка PHP
Серьезность: предупреждение
Сообщение: date() [function.date]: небезопасно полагаться на системные настройки часового пояса. Вам обязательно использовать параметр date.timezone или функцию date_default_timezone_set(). Если вы использовали какой-либо из этих методов и все еще получаете это предупреждение, вы, скорее всего, ошиблись в идентификаторе часового пояса. Вместо этого мы выбрали «Америка/Нью-Йорк» для «EST/-5.0/без летнего времени».
Имя файла: библиотеки/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
, предупреждения об ошибках исчезают.
Где я ошибся?