现象:
所有bbs目录下的php文件打开内容都为空,但是状态码都是正常的200。
分析与过程:
- 清除CDN全站缓存,无效
- CDN回源,由于问题依然存在,证明不是CDN的问题
- 查看宝塔Nginx防火墙,防篡改,防提权,PHP保护,WAF保护,没有任何记录
- 重载Nginx配置,重启Nginx服务,无效
- 重载PHP配置,重启PHP服务,无效
- 重载Memcached与Redis配置,重启服务,无效
- TOP命令检查PHP-FPM运行状态,正常
- 服务器探针iprober.php显示正常,排除php安装配置问题与服务器本身问题,至此确定应该是Discuz本身的问题
- 将模板恢复至默认模板,安装的插件都关闭,无效
- 手动清除data/cache下所有Discuz缓存,问题解决
解决方案:
手动清除data/cache下所有文件,然后重新访问即可。
问题透视:
分析是因为Discuz过分依赖缓存了,而缓存由于某些问题导致是空的