帮助中心 >  技术知识库 >  虚拟主机 >  虚拟主机常见问题及技术支持 >  PHP has encountered an Access Violation at XX的解决办法

PHP has encountered an Access Violation at XX的解决办法

2016-09-23 15:26:41 6517

PHP has encountered an Access Violation at XXXX的解决办法


出现的原因:内存占用高与服务器内存资源少,IIS应用池资源不能即时回收导致 

解决方法: 

1、服务器设置: 

         1)设置IIS应用池回收时间小于60分钟(默认是1740分钟,很多服务器都没改过) 

         2)应用池可支配大小不低于500M 

         3)CPU使用限制不低于50%(部分服务器为了提供更多虚拟机给站长使用,限制了CPU使用率) 

         4)可以安装php的eAccelerator模块,网站可提速5-10倍,还可减少文件加载资源消耗 

2、网站优化(IIS 虚拟机用户): 

        1)后台关闭debug模式 

        2)把模块属性里的“数据更新周期”设为480分钟,并设置“数据更新区间”设为“开始于1点0分 结束于10点0分” 

意思就是数据自动更新时间在访问空闲时段,避免高峰数据更新占用大量内存和CPU资源。如果还出现,直接?周期设为0,手动更新。模块包括默认的喜欢页和话题页模块以及拖曳、导入的模块 

        3)后台全局里设置防刷新时间间隔3秒 

        4)减少二级域名和伪静态的使用,这个很占用资源 



额外的话:虚拟主机用户使用前请先确认php有没有安装zlib模块(用于应用安装)和socket模块(curl模块)用于应用中心以及windid通信




整体思路如下:

1、更新到5.2后php版本 

2、是否zend所需的dll文件所在目录给的权限不够,必须有读取和运行的权限 

3、如果使用的是windows系统,是否设置过应用池,比如池中限制了什么 

4、高版本的PHP和Mysql存在兼容性的问题。c:/windows/system32下的libmysql.dll 使用php下的,不要使用mysql下的,因为两个程序下都有 

5、php.ini有两个地方没有设置 

1) 

将;upload_tmp_dir该行的注释符,即前面的分号“;”去掉,使该行在php.ini文档中起作用。 

upload_tmp_dir是用来定义上传文件存放的临时路径,在这里你还可以给其定义一个绝对路径 

比如:upload_tmp_dir = d: mp   

(d: mp目录必须有读写权限) 

2) 

php.ini中关于session.save_path一项没有设置好,解决的方法是将 

session.save_path和session.cookie_path 定义一个绝对路径 

比如: 

session_save_path = d: emp 

session.cookie_path = d: emp 

(d: mp目录必须有读写权限)


提交成功!非常感谢您的反馈,我们会继续努力做到更好!

这条文档是否有帮助解决问题?

非常抱歉未能帮助到您。为了给您提供更好的服务,我们很需要您进一步的反馈信息:

在文档使用中是否遇到以下问题: