- 论坛徽章:
- 0
|
首先说明下测试环境及相关软件
ubuntu8.04
nginx-0.7.61
php5.3.0
php-5.3.0-fpm-0.5.12
mysql-5.0.77
xdebug2.0.5
前两天看了zymh_zy 发的 建议这段时间做php方面网站布署的用户,慎用php5.3.0 中提到升级到php5.3.0后遇到的问题,今天自己动手测试下,nginx,php和mysql都是手动源码编译安装,由于自己已经有安装apache2.2.9和php5.2.9,为了不影响原版本的使用,选择使用nginx及php的fastcgi模式,其中用到了php-fpm(http://php-fpm.org)
编译安装过程......省略N百字
OK,环境交待清楚了,然后我们来看 zymh_zy 遇到的问题
因为,俺在安装php5.3.0就遇到一两个奇怪问题。第一,就是php5.3.0下面没有php.ini-dist文件,
在php5.3.0中与原来的php.ini-dist和php.ini-recommended对应的ini文件是php.ini-development和php.ini-production
第二,就是在运行phpinfo.php总提示date参数不对。总将timezone设为Asia/Chongqing .最后,要修改php.ini的开发版本的timezone设置。phpinfo.php所显示的date参数才正常。
这个问题我这里也出现了,具体提示内容为:- Warning: phpinfo() [function.phpinfo]: 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 'America/New_York' for 'EDT/-4.0/DST' instead in /home/lvyaozu/nginxroot/phpinfo.php on line 2
复制代码 这个问题大家可能再熟悉不过了,php5的时区问题,在php5.2中默认为America/New_York,但当在使用date函数时会提示让设置时区,在php5.3.0中,当没有在php.ini中设置date.timezone时会提示,解决这个问题的办法就是给php.ini中date.timezone设置默认值
至于 zymh_zy 提到的乱码问题可能还是出在数据库的编码和程序编码不统一上,不过看了下 zymh_zy 所说的乱码似乎是因为没有安装zendoptimizer的原因,supesite有部分代码是加密过的,所以是要求必须安装 zendoptimizer 才能正常运行,这就跟编码无关了,至于php为什么无法加载zendoptimizer就不知道原因了,由于本地环境只是做开发测试,代码不需要加密后运行,所以我也从没安装过
环境搭建好后,我测试了下discuz7, ucenter1.5以及uchome1.5可以正常运行(需要开启short_open_tag)
同时在这里说下 dz902 所说的xdebug不能用的问题,我经过测试,完全可以用,我是手动编译的最新的xdebug2.0.5,同时注意官方手册中有一句
From PHP 5.3 onwards, you need to use zend_extension and not zend_extension_ts.
先把这些内容保存下。。。一会传截图上来
[ 本帖最后由 网鬼 于 2009-8-2 19:58 编辑 ] |
评分
-
查看全部评分
|