php5.x禁用eval的操作方法

所属分类: 网络编程 / PHP编程 阅读数: 1360
收藏 0 赞 0 分享

这次我们来说如何禁止php代码中执行eval函数,本来以为直接修改php.ini中的disable_function即可~

但现实往往并不是那么如意,查了一下GG,发现原来eval并非函数,而是php底层提供的一种特性。

幸好有前辈提供了php扩展来禁用万恶的eval: suhosin

一开始发现是需要给php打补丁,我是拒绝的,但确实没有找到更好的方法。不过实际安装下来,真的很方便:

yum install wget make gcc gcc-c++ zlib-devel openssl openssl-devel pcre-devel kernel keyutils patch perl
cd /usr/local/src
wget http://download.suhosin.org/suhosin-对应的版本.tgz
tar zxvf suhosin-对应的版本.tgz
cd suhosin-对应的版本
/usr/bin/phpize
./configure --with-php-config=/usr/bin/php-config
make & make install

编译完后会提示你库文件的位置,例如: /usr/lib64/php/modules

我们只需要在php.ini中增加对应的扩展即可:

extension=/usr/lib64/php/modules/suhosin.so
suhosin.executor.disable_eval=On

重启php-fpm进程后,就可以在phpinfo中看到suhosin扩展已经装好了~

仔细看增加的配置项,其实很多控制的点,得慢慢研究啊~

以上所述是小编给大家介绍的php5.x禁用eval的操作方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

更多精彩内容其他人还在看

PHP.MVC的模板标签系统(四)

PHP.MVC的模板标签系统(四)
收藏 0 赞 0 分享

PHP.MVC的模板标签系统(五)

PHP.MVC的模板标签系统(五)
收藏 0 赞 0 分享

Windows下的PHP5.0安装配制详解

Windows下的PHP5.0安装配制详解
收藏 0 赞 0 分享

最令PHP初学者头痛的十四个问题

最令PHP初学者头痛的十四个问题
收藏 0 赞 0 分享

PHP中的串行化变量和序列化对象

PHP中的串行化变量和序列化对象
收藏 0 赞 0 分享

PHP 5.0对象模型深度探索之绑定

PHP 5.0对象模型深度探索之绑定
收藏 0 赞 0 分享

PHP5.0对象模型探索之抽象方法和抽象类

PHP5.0对象模型探索之抽象方法和抽象类
收藏 0 赞 0 分享

PHP在XP下IIS和Apache2服务器上的安装

PHP在XP下IIS和Apache2服务器上的安装
收藏 0 赞 0 分享

初学者入门:细述PHP4的核心Zend

初学者入门:细述PHP4的核心Zend
收藏 0 赞 0 分享

PHP环境搭建最新方法

PHP环境搭建最新方法
收藏 0 赞 0 分享
查看更多