PHP has encountered an Access Violation at XX出现原因和解决办法
PHP has encountered an Access Violation at XX出现原因和解决办法
出现的原因:程序内存占用高于服务器内存,IIS应用池资源不能即时回收导致
解决方法:
1、重启程序池
2、服务器设置:
1)设置IIS应用池回收时间小于60分钟(默认是1740分钟,很多服务器都没改过)
2)应用池可支配大小不低于500M
3)CPU使用限制不低于50%(部分服务器为了提供更多虚拟主机给站长使用,限制了CPU使用率)
4)可以安装php的eAccelerator模块,网站可提速5-10倍,还可减少pw9的文件加载资源消耗
3、网站优化(IIS 虚拟机用户):
1)后台关闭debug模式
2)把模块属性里的“数据更新周期”设为480分钟,并设置“数据更新区间”设为“开始于1点0分 结束于10点0分”
意思就是数据自动更新时间在访问空闲时段,避免高峰数据更新占用大量内存和CPU资源。如果还出现,直接把周期设为0,手动更新。模块包括默认的喜欢页和话题页模块以及拖曳、导入的模块
3)后台全局里设置防刷新时间间隔3秒
4)减少二级域名和伪静态的使用,这个很占用资源。