«Phpinfo (): небезопасно полагаться на настройки часового пояса системы…» [дубликат]
На этот вопрос уже есть ответ здесь:
«Date (): небезопасно полагаться на настройки часового пояса системы…» 22 ответаПри запуске сценария установки php для Blue.box (интерфейс для FreeSwitch PBX) я получаю эту ошибку о сбое часового пояса.
Тогда я начинаю копать. Я не уверен, что происходит в этот момент. Но вот что у меня есть:
Я создал файл info.php в моем каталоге public_html, который содержит одну строку:
И я получаю эту ошибку и вывод
Предупреждение: phpinfo (): небезопасно полагаться на настройки часового пояса системы. Вытребуется использовать настройку date.timezone или функцию date_default_timezone_set (). Если вы использовали какой-либо из этих методов и по-прежнему получаете это предупреждение, вы, скорее всего, неправильно написали идентификатор часового пояса. Мы выбрали «America / New_York» для «EDT / -4.0 / DST» вместо этого в /home/0default/public_html/info.php в строке 1
date/time
support enabled
"Olson" Timezone Database Version 0.system
Timezone Database internal
Default timezone America/New_York
Directive Local Value Master Value
date.default_latitude 31.7667 31.7667
date.default_longitude 35.2333 35.2333
date.sunrise_zenith 90.583333 90.583333
date.sunset_zenith 90.583333 90.583333
date.timezone America/New_York America/New_York
Я создал файл /etc/php.d/timezone.ini со следующим:
[root@mercury php.d]# cat timezone.ini
; default time zone
date.timezone='America/New_York'
[root@mercury php.d]#
Я могу изменить часовой пояс на America / Los_Angeles (например), и после перезагрузки apache поле date.timezone изменяется правильно.
Но я все еще получаю ошибку.
Есть идеи?
--- Дополнительное примечание ---
Если я изменю файл /etc/php.d/timezone.ini:
[root@mercury php.d]# cat timezone.ini
; default time zone
date.timezone='America/Los_Angeles'
Я могу вызвать изменение в выводе info.php:
Дата
Предупреждение: phpinfo (): небезопасно полагаться на настройки часового пояса системы. Вытребуется использовать настройку date.timezone или функцию date_default_timezone_set (). Если вы использовали какой-либо из этих методов и по-прежнему получаете это предупреждение, вы, скорее всего, неправильно написали идентификатор часового пояса. Мы выбрали «America / New_York» для «EDT / -4.0 / DST» вместо этого в /home/0default/public_html/info.php в строке 1
date/time support enabled
"Olson" Timezone Database Version 0.system
Timezone Database internal
Default timezone America/New_York
Directive Local Value Master Value
date.default_latitude 31.7667 31.7667
date.default_longitude 35.2333 35.2333
date.sunrise_zenith 90.583333 90.583333
date.sunset_zenith 90.583333 90.583333
date.timezone America/Los_Angeles America/Los_Angeles
--- Дополнительное примечание ---
Для тех, кто учится (как и я), загружается несколько файлов .ini. В выводе info.php:
Configuration File (php.ini) Path /etc
Loaded Configuration File /home/0default/etc/php5/php.ini
Scan this dir for additional .ini files /etc/php.d
Additional .ini files parsed /etc/php.d/curl.ini, /etc/php.d/dom.ini, /etc/php.d/fileinfo.ini, /etc/php.d/gd.ini, /etc/php.d/imap.ini, /etc/php.d/json.ini, /etc/php.d/mbstring.ini, /etc/php.d/mysql.ini, /etc/php.d/mysqli.ini, /etc/php.d/odbc.ini, /etc/php.d/pdo.ini, /etc/php.d/pdo_mysql.ini, /etc/php.d/pdo_odbc.ini, /etc/php.d/pdo_pgsql.ini, /etc/php.d/pdo_sqlite.ini, /etc/php.d/pgsql.ini, /etc/php.d/phar.ini, /etc/php.d/snmp.ini, /etc/php.d/sqlite3.ini, /etc/php.d/timezone.ini, /etc/php.d/wddx.ini, /etc/php.d/xmlreader.ini, /etc/php.d/xmlrpc.ini, /etc/php.d/xmlwriter.ini, /etc/php.d/xsl.ini, /etc/php.d/zip.ini
Первым загружен файл /etc/php.ini, затем «загруженный файл конфигурации», затем файлы «просканируйте этот каталог».
Так, например, нужно иметь возможность создавать несколько php-сайтов в разных часовых поясах по умолчанию. Установите мастер по умолчанию в /etc/php.ini, затем разрешите каждому веб-сайту иметь свой часовой пояс, как указано в разделе «загружено ...». Затем, если кто-то обеспокоен какими-либо переопределениями, мастер может снова переопределить файлы /etc/php.d.
Я попытался изменить «date.timezone» в каждом из трех мест и успешно изменить date.timezone, отображаемый в файле info.php ..., но он не изменяет значение «Default timezone», которое является значение, которое вызывает ошибку.
Еще одно замечание, скрипт .php, который я запускаю, на самом деле Blue.box, интерфейс для FreeSwitch. Итак ... я не решаюсь изменить этот скрипт .php.