CentOS 5.3 php 装zendOptimizer 3.3.0
问题:Failed loading /usr/local/Zend/lib/Optimizer-3.3.0/php-5.2.x/ZendOptimizer.so: /usr/local/Zend/lib/Optimizer-3.3.0/php-5.2.x/ZendOptimizer.so: cannot restore segment prot after reloc: Permission denied
Failed loading /usr/local/Zend/lib/Optimizer-3.3.0/php-5.2.x/ZendOptimizer.so: /usr/local/Zend/lib/Optimizer-3.3.0/php-5.2.x/ZendOptimizer.so: cannot restore segment prot after reloc: Permission denied
按照字面意思就以为是权限了,但是检查了没有什么差异,又以为是和之前装的eaccelerator冲突,于是又参照了这篇文章,未果。索性直接将eaccelerator去掉了,还是不行。
后来又查了很多资料,结果发现是和selinux有关,去/etc/selinux/config下面selinux去掉disable后问题解决。
或是 selinux=disabled
#php -c /etc/ -v //检查是否成功!
//////////////////////////////////(转载)
具体解决方法:
1. 对于 php.ini文件路径有问题( 我的在 phpinfo()显示php.ini路径正确,我就不用这个方法 )
解决方法
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
HP 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 Zend Technologies
with Zend Extension Manager v1.0.9, Copyright (c)
相关文档:
近日在用自己以前写的http下载器下载某一个php页面以外遭遇403错误.但是ie却能够正确访问. 日志如下: IE: Time At:0005504671
Line:10
send: 192.168.1.2 –> xxx.xxx.xxx.xxx len:351
GET /test.jpg HTTP/1.1
Accept: */*
Accept-Language: en-us
Accept-Enc ......
PHP是个伟大的web开发语言,灵活的语言,但是看到php程序员周而复始的犯的一些错误。我做了下面这个列表,列出了PHP程序员经常犯的10中错误,大多数和安全相关。看看你犯了几种
1.不转意html entities
一个基本的常识:所有不可信任的输入(特别是用户从form中提交的数据) ,输出之前都要转意。
......
使用的是ADODB库,需要有OCI8库.
<?php
//require("adodb5/adodb-exceptions.inc.php");
require("adodb5/adodb.inc.php");
$conn = NewADOConnection("oci8");
$conn->Connect($url, $user, $password, $service_name);
$rs;
try {
$rs = $conn->Execu ......
<?
$music = $_POST['music'];
//取得所选中的checkbox的个数
$coun=count($music);
if ( is_array( $music ) ) {
echo '您选择的是 : ';
foreach ( $music as $key => $var )
echo ' ['.$var.']';
......