系统:Debian Lenny/Apache 2.2/php5.3.3源代码编译
我正在与php.ini中的date.timezone进行斗争.
我可以在php源代码中定义TZ,但我想在ini文件中立即修复它.
php代码:好的
date_default_timezone_set('Europe/Berlin');
Run Code Online (Sandbox Code Playgroud)
php.ini:如果没有在源代码中设置,则不予考虑
date.timezone = 'Europe/Berlin'
Run Code Online (Sandbox Code Playgroud)
我还检查了我修改了正确的php.ini文件并干扰了一些php.default.ini文件.
我在apache配置文件中检查了是否存在干扰TZ env数据,但没有.
不知道该怎么做,所以任何提示都会受到欢迎,
thx提前.
编辑:我也试过没有或单引号或双引号作为date.timezone ='Europe/Berlin',但我仍然在phpinfo中得到"无价值".
EDIT2:phpinfo()和下面的测试脚本都返回date.timezone为空(例如没有值):
date_default_timezone_set('America/Los_Angeles');
$script_tz = date_default_timezone_get();
$iniset = ini_get('date.timezone') ;
if (strcmp($script_tz, $iniset)){
echo "Script timezone ($script_tz) differs from ini-set timezone ($initset).";
} else {
echo "Script timezone ($script_tz) and ini-set timezone match.";
}
Run Code Online (Sandbox Code Playgroud)
编辑3:哼,我想我在php.ini中找到了sthg :
Configuration File (php.ini) Path : /usr/local/php533/php.ini
Loaded Configuration File : VOID !
Run Code Online (Sandbox Code Playgroud)
所以我必须找到确保Apache正在以某种方式寻找合适的php.ini的方法......
我想你错过了引号:
date.timezone = "Europe/Berlin"
Run Code Online (Sandbox Code Playgroud)
该值是一个字符串,根据:PHP.net上的ini.date.timezone,必须用引号括起来.
希望它可以帮助其他使用 Debian 的发行版:
已解决:
需要告诉 Apache 加载所需的php.ini文件
上下文:
PHP 作为 Apache 模块加载(例如 DSO)
简而言之:
shell ENV
PHP_INI_SCAN_DIR=/pathtophpini
export PHP_INI_SCAN_DIR
Run Code Online (Sandbox Code Playgroud)
http.conf
# ...
# DSO Modules: PHP as an Apache module
SetEnv PHPRC /usr/pathtophpini
SetEnv PHP_INI_SCAN_DIR /usr/pathtophpini
LoadModule php5_module /pathtophpmod/libphp5.so
PHPINIDir /pathtophpini
# ...
Run Code Online (Sandbox Code Playgroud)
壳
/etc/init.d/apache2 restart
Run Code Online (Sandbox Code Playgroud)
现在只需使用命令行中的 php-cli 或 phpinfo() 检查加载的配置文件php.ini是否正确:
/path/to/your/phpcli/bin/php -i | grep php.ini | tail -n2
# which gives you the expected answer
Configuration File (php.ini) Path => /pathtophpini/php.ini
Additional .ini files parsed => /pathtophpini/php.ini
Run Code Online (Sandbox Code Playgroud)
更多文档:
关于这个非常特殊的一点,前提是关于该主题的文档很少,因为这是 apache 和 php 之间的一种共享责任主题:
在 stackoverflow
上的 php 手册
Askapache上
| 归档时间: |
|
| 查看次数: |
20788 次 |
| 最近记录: |