php 扩展 suhosin 配置不当引发的报错及其解决方法
生活随笔
收集整理的這篇文章主要介紹了
php 扩展 suhosin 配置不当引发的报错及其解决方法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1、
/var/log/messages 頻繁報錯:
Jul 24 03:27:04 localhost suhosin[9115]: ALERT - script tried to increase memory_limit to 524288000 bytes which is above the allow ed value (attacker '14.215.58.244', file '/home/www/bbsphp/index.php', line 2)查看/home/www/bbsphp/index.php,發現有以下語句:
ini_set("memory_limit","500M");?
查看php.ini :
# grep 'suhosin.memory_limit' /usr/local/php/etc/php.ini suhosin.memory_limit = 128M解決方法:
修改php.ini :
suhosin.memory_limit = 640M ?或 ?memory_limit = 640M
?
2、
/var/log/messages 頻繁報錯:
Jul 27 21:31:04 localhost suhosin[5308]: ALERT - configured request variable name length limit exceeded - dropped variable 'Mozill a/5_0_(iPhone;_CPU_iPhone_OS_9_3_2_like_Mac_OS_X)_AppleWebKit/601_1_46_(KHTML,_like_Gecko)_Mobile/13F69;com_chw_appking/18touch_com/tq3_0/dis:AppStore:1_5' (attacker '175.44.219.89', file '/home/www/index.php')?
解決:
在php.ini的 [suhosin] 下添加以下三行:
suhosin.request.max_varname_length = 1024 suhosin.get.max_name_length = 1024 suhosin.post.max_name_length = 1024?
suhosin配置,官方說明:http://www.suhosin.org/stories/configuration.html
?
3、禁止eval函數
網上說使用disable_functions 禁止掉eval函數,但是這種禁止是無法生效的。
php的eval函數并不是系統組件函數,因此我們在php.ini中使用disable_functions是無法禁止它的。
?
那么php怎么禁止eval呢?
如果想禁掉eval可以用php的擴展 Suhosin:
1、安裝Suhosin擴展 2、在php.ini中加入:extension=suhosin.so 3、在加上:suhosin.executor.disable_eval = on 4、重啟php-fpm服務注意,當禁止eval函數后,有些系統會出現以下錯誤:
Fatal error: SUHOSIN - Use of eval is forbidden by configuration in /home/wp-includes/classes.php(219) : eval()'d code on line 219?
轉載于:https://www.cnblogs.com/hjqjk/p/5712830.html
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的php 扩展 suhosin 配置不当引发的报错及其解决方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: elk系列5之syslog的模块使用
- 下一篇: CSS3几种新的长度单位