Ошибка PHP в админке Textpattern и web-сервере apache2
На моем сервере под управлением FreeBSD 8.0-RELEASE работает web-сервер apache-2.0.63_3 с поддержкой php5-5.3.2. После недавнего обновления языка PHP5 в администраторской панели моего блога на движке CMS Textpattern-4.2.0 стали выводится ошибки… |
Ошибки имели следующий вид:
Warning: getdate() [function.getdate]: It is not safe to rely on the system’s timezone settings. You are required to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected ‘Europe/Moscow’ for ‘MSD/4,0/DST’ instead in /usr/local/www/blog/textpattern/lib/txplib_misc.php on line 1262
и
Warning: date_default_timezone_get() [function.date-default-timezone-get]: It is not safe to rely on the system’s timezone settings. You are required to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected ‘Europe/Moscow’ for ‘MSD/4,0/DST’ instead in /usr/local/www/blog/textpattern/include/txp_diag.php on line 481
Видимого деструктивного воздействия на мой блог не происходило, но вывод этих ошибок доставлял немало неудобств.
Одновременно в лог ошибок работы моего блога web-сервер apache2 писал похожие ошибки:
[Sat Apr 17 16:33:36 2010] [error] [client 94.253.18.242] PHP Warning: getdate() function.getdate]: It is not safe to rely on the system’s timezone settings. You are required to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected ‘Europe/Moscow’ for ‘MSD/4,0/DST’ instead in /usr/local/www/blog/textpattern/lib/txplib_misc.php on line 1262, referer: http://www.maxblogs.ru/textpattern/index.php?event=article
[Sat Apr 17 16:33:36 2010] [error] [client 94.253.18.242] PHP Warning: mktime() [function.mktime]: It is not safe to rely on the system’s timezone settings. You are required to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected ‘Europe/Moscow’ for ‘MSD/4,0/DST’ instead in /usr/local/www/blog/textpattern/lib/txplib_misc.php on line 1263, referer: http://www.maxblogs.ru/textpattern/index.php?event=article
[Sat Apr 17 16:33:36 2010] [error] [client 94.253.18.242] PHP Warning: strftime() [function.strftime]: It is not safe to rely on the system’s timezone settings. You are required to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected ‘Europe/Moscow’ for ‘MSD/4,0/DST’ instead in /usr/local/www/blog/textpattern/lib/txplib_misc.php on line 1299, referer: http://www.maxblogs.ru/textpattern/index.php?event=article
Исправить все очень просто. Необходимо только в файл настройки языка PHP5, расположенного по пути /usr/local/etc/php.ini, внести правильные настройки вашего часового пояса. Для меня верны следующие его настройки:
# nano -w /usr/local/etc/php.ini ;;;;;;;;;;;;;;;;;;; ; Module Settings ; ;;;;;;;;;;;;;;;;;;; [Date] ; Defines the default timezone used by the date functions date.timezone = Europe/Moscow
После внесения верных для вас настроек date.timezone перегрузите ваш web-сервер:
# /usr/local/etc/rc.d/apache2 restart
После этих действий ошибки в админке textpattern и в логе web-сервера apache2 пропали.
Было тоже такое дело. Работало все на FreeBSD 7.0 все ровно. Начал строить все на 8.2 начало появляться. Может чего не достроил. Конфиги не менял. Прошло после настройки PHP, переименования /usr/local/etc/php.ini-production в /usr/local/etc/php.ini. Но, видимо, косяк где-то дальше в настройках, т.к., например, не отображаются корректно надписи в заголовках страниц…
Спасибо.Помогло.Просто добавил в php.ini эту строку.