Centos下zend Optimizer无法启动的解决方法 [转帖]
2012-01-13 10:41
375 查看
解决方法
php -i | grep php.ini 就可以找到当前php使用的php.ini文件
比如, 编译安装时没有指定php.ini存放路径, 那么默认php.ini会放在/usr/local/lib下面
最好是在编译PHP时指定PHP配置文件的路径 如:–with-config-file-path=/usr/local/etc
而一般zend默认安装 php.ini在/etc/目录下面或/usr/local/Zend/etc所以需要在安装的时候手工指定我们php.ini文件存放的位置
如果, 不知道现在的PHP 的配置文件具体位置的话 可以查看一下:
php -i | grep php.ini
如果php optimizer安装好了 却发现不能加载的话可以 手工指定读取php.ini文件的位置
php -c /etc/ -v 如果可以看到zend opt正确加载
那么做个连接就好了 连接到php默认读取的php.ini路径下面
比如
ln -sf /etc/php.ini /usr/local/lib
[root@localhost /]# php -v
PHP 5.2.5 (cli) (built: Jan 22 2006 12:59:19)
Copyright (c) 1997-2006 The PHP Group
Zend Engine v1.3.0, Copyright (c) 1998-2004 ZendTechnologies
with Zend Extension Manager v1.0.9, Copyright (c) 2003-2006, byZend Technologies
with Zend Optimizer v3.3.2, Copyright (c) 1998-2006, by ZendTechnologies
Ok 正常了 phpinfo()看到的当然也是一样的
2. 调用库文件的问题
有的时候还有一些情况下 php -i 或php -v 在控制台下可以看到zend opt,
但是 apache 执行phpinfo的输出里面却看不到
一般是因为 调用php的时候zend模块不能加载, 比如AS4里面 就是这样的
如as4下面默认的php安装后读取库文件的路径 是在/usr/lib下面 ,
而php.ini文件中加载zend模块是在zend安装路径的lib目录中
比如/usr/local/Zend/lib 这时apache在执行php时 不能加载zend模块 所以 在控制台里php -v可以正常
但是apache 却没有加载zend。
解决办法
先把zend模块copy到
/usr/lib里面 然后改一下php.ini里面zend加载模块部分
3. 最恶心的SElinux问题
SElinux导致PHP不能使用zend/lib下的库文件。所以,即便是做了link也不行。只能够拷贝库文件到有权限的目录。或者直接关掉SElinux
但如果在 /etc/selinux/config 的 SELINUX=disabled 关掉SElinux 还是不行,还执行下
chcon -t texrel_shlib_t 命令
如: chcon -t texrel_shlib_t/usr/local/Zend/lib/Optimizer-3.3.0/php-5.2.x/ZendOptimizer.so(这个文件视具体执行文件.)
就可以了。
解决的情况是:
1. 关闭SElinux
2. 运行 #chcon -t texrel_shlib_t/usr/local/Zend/lib/Optimizer-3.3.0/php-5.2.x/ZendOptimizer.so
就可以了。
相关文章推荐
- 双系统重装windows7后无法启动centos6.4的解决方法
- centos安装后导致原有的ubuntu无法启动的解决方法
- U盘安装Centos后拔除U盘无法启动问题解决方法
- centos 7 yum install mysql 安装mariadb 后 mysql 无法启动的解决方法
- centos 7 yum install mysql 安装mariadb 后 mysql 无法启动的解决方法
- 安装centos后无法引导启动windows7的解决方法
- U盘安装Centos后拔除U盘无法启动问题解决方法
- vmware克隆Centos6.4虚拟机网卡无法启动问题的解决方法
- 安装centos后无法引导启动windows7的解决方法
- CentOS的u盘安装有u盘才启动,没有u盘无法启动的解决方法by 42coder
- centos下docker无法正常启动检查与解决方法
- 【CentOS】fstab挂载项错误,无法正常启动系统的解决方法
- 阿里云CentOS 6.5 Docker无法启动 Could not find a free IP address range for interface 'docker0' 最方便的解决方法
- U盘安装Centos后拔除U盘无法启动问题解决方法
- U盘安装Centos后拔除U盘无法启动问题解决方法
- 安装centos后无法引导启动windows7的解决方法
- 解决 U盘安装Centos后拔除U盘无法启动问题方法,重新建立引导分区
- CentOS 7下Tomcat启动后无法启动问题解决方法
- 应用程序无法正常启动 0xc000007b (包括win7 64位)的解决方法