共享主机环境下如何消除PHP错误日志中的非致命警告?
精准抑制扩展加载警告,保留自身脚本错误提示
优先选
& ~E_CORE_WARNING,别用~E_WARNING
你遇到的这个警告属于PHP核心层面的启动警告(E_CORE_WARNING),是PHP加载memcached扩展时触发的,和你自己脚本运行时产生的普通警告(E_WARNING)完全是两回事。修改后的error_reporting配置应该是:error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT & ~E_CORE_WARNING这样既能屏蔽这个烦人的扩展加载报错,又能正常记录你自己脚本里的问题(比如变量未定义、文件读写失败这类警告),不会错过自身代码的潜在问题。
修改后验证效果
保存php.ini后,等几分钟共享主机的PHP服务自动刷新(部分主机需手动重启,但共享主机一般支持自动生效),再下载日志确认该警告是否消失。可以写个简单测试脚本(比如echo $undefined_var;)触发普通警告,检查日志是否能正常记录,确保没误屏蔽有用的提示。关于警告来源的补充
这个警告和恶意访问无关,它是PHP进程初始化时触发的(不管有没有用户请求),只是因为你把所有错误集中记录,所以看起来出现得很频繁。
内容的提问来源于stack exchange,提问作者Randy
相关产品推荐
相关产品推荐

