我在ubuntu12.04上运行PHP5.6作为apache 2.4模块 Suhosin是从源头安装的
Suhosin已启用,我可以在phpinfo()函数输出中看到它。 我在suhosin.ini中有这些行:
suhosin.executor.disable_eval = On
suhosin.executor.disable_emodifier = On
我也可以在phpinfo()中看到它们已启用。全球和本地。
但出于某种原因简单
eval('echo 5;');
只是告诉我该死的“5”!!!
同样
preg_replace("/.*/e", "eval('echo 5, PHP_EOL;')", ".");
如何启用该suhosin?
答案 0 :(得分:1)
您必须在phpinfo()
中检查行suhosin.executor.disable_eval
和suhosin.executor.disable_emodifier
中的本地值和主值,以确保正确读取配置文件,而不仅仅是激活suhosin。
这些指令的本地值应设置为' On'。
如果本地为“关”但主节点为“开”,则虚拟主机配置可能会覆盖此参数。如果两者都关闭,那么你的suhosin.ini没有被正确解析
您还必须知道suhosin.simulation
(调试模式)设置为Off
。