你的位置:HBcms宏博内容管理系统 HBcms使用帮助 如何安装 安装过程及注意事项 正文
如何安装
  1. 系统环境要求
  2. 下载HBcms源码安装包
  3. 下载本地试用安装包
  4. 开始安装
  5. 安装过程及注意事项
内容搜索
热门内容
  1. 全部是乱码!不能安装..
  2. cms安装后,哪些文件可..
  3. HBcms安装过程FAQ和宏..
  4. unzip安装时出现PHP ..
  5. 如何安装多个HBcms?如..
  6. 如何在有ssh的服务器上..
推荐内容
  1. 如何安装多个HBcms?如..
  2. 如何在有ssh的服务器上..
  3. cms安装后,哪些文件可..
  4. HBcms安装过程FAQ和宏..
  5. unzip安装时出现PHP ..
  6. 全部是乱码!不能安装..
unzip安装时出现PHP Access Violation异常
  •  添加时间:2006-08-04 发表时间:2006-08-04 人气:1354
  • 在使用unzip.php安装时,在 windows 的机器可能会:

    问: 我的系统出现PHP has encountered an Access Violation at 77FC8F11是怎么回事?

    答: 是内存问题.可能是WINDOWS版本本身有内存问题或是手工设置了WINDOWS的虚拟内存不适合PHP运行.

    国外相关资料:

    Personally, I would think XP is extremely buggy on the memory allocation
    part... It seems unable to handle LOTS of allocations/reallocations after
    eachother... I made a program, which can do one allocation 260 times or so..
    Then it crashes... I haven't seen any logic at all in this...

    解决办法是:

    1. 不使用unzip.php安装。使用解压目录,将整个目录上传的通用办法安装
    2. 多尝试几次,有时候可以不出现这个问题。(这个bug只在window平台出现)

     

    以下为网上摘抄的一些相关回答:

    这个问题不是很好处理,困惑了很多站长非常时间了
    主要出现在windows主机的服务器上。
    在php官方,http://bugs.php.net/
    也能够查到两三千页的报告,他们官方也是束手无策,经过了11个小版本后,还是没有彻底解决
    http://bugs.php.net/search.php?cmd=display&search_for=PHP+has+encountered+an+Access&x=8&y=9

    目前我提供一下这几年我维护经验,我的一些民间解决办法

    第一种可能:

    去掉 php中 eaccelerator 的扩展
    这样做能够解决您的问题,不过可能会加重系统负担
    因为eaccelerator主要是为了节省系统资源的东西

    具体做法是找到php.ini
    如果是我帮您配置的,一般在c:/php/php.ini或者 c:/winnt/php.ini 或者c:/windows/php.ini

    去掉

    zend_extension_ts="C:\php\extensions\eaccelerator_win_xxx.dll"
    eaccelerator.shm_size="16"
    eaccelerator.cache_dir="c:\temp"
    eaccelerator.enable="1"
    eaccelerator.optimizer="1"
    eaccelerator.check_mtime="1"
    eaccelerator.debug="0"
    eaccelerator.filter=""
    eaccelerator.shm_max="0"
    eaccelerator.shm_ttl="0"
    eaccelerator.shm_prune_period="0"
    eaccelerator.shm_only="0"
    eaccelerator.compress="1"
    eaccelerator.compress_level="9"

    ea主要是在unix环境下开发的,但是作者忽略到windows实际上不像u主机那样,是没有u主机的那种内存共享机制的
    这个bug已经提交给他们了,希望0.9.5能够解决

    当然,如果您的机器这个问题不严重,建议还是保留,ea是一块非常优秀的Php缓存+加速软件
    配合zo使用,将会降低系统负担 50%-80%左右,提高负载能力、速度和效率 200%左右

     


    第二种可能

    session_save_path 需要设定一个实际的物理路径,并且该目录需要everyone的所有权限,类似U主机的0777

     


    第三种可能
    c:/winnt/temp 或者 c:/windows/temp
    也需要everyone的所有权限,类似U主机的0777

     


    第四种可能
    您的内存严重不足,查看一下,如果有问题,请加内存,最好是一次加两条
    比如加1G内存,最好是加2条一模一样的512M。否则没有启用双通道,效果也很一般

     


    第五种可能
    ZendOptimizer和php的搭配不是很好
    换个版本试试看
    目前比较稳定的搭配是
    php4.3.11+zo 2.5.10a
    或者php4.4.1+zo 3.0 beta2

     


    第六种可能

    这种多属于用win2003的用户
    他们在应用池中设定了限制
    比如多长时间回收,最大使用内存多少等等
    这些设置势必造成这个经典的php错误
    木头经过数以百计的测试,敢担保问题会出现在这里。

    网友评论:

    我也有过这样的问题,这是我在百度上找的答案。
    PHP的错误
    php经常报错,显示PHP has encountered an Access Violation at XXXXXX
    很多人说,是php版本的问题,其实不然,可以从四个地方来看这个问题
    1,是否zend所需的dll文件所在目录给的权限不够,必须有读取和运行的权限
    2,是否使用的2003,设置过应用池,比如池中限制了什么什么,调整一下再试试看,是否好了,呵呵
    3,php.ini有两个地方没有设置,而且一些程序必须用到的

    A
    将;upload_tmp_dir该行的注释符,即前面的分号“;”去掉,使该行在php.ini文档中起作用。upload_tmp_dir是用来定义上传文件存放的临时路径,在这里你还可以给其定义一个绝对路径,例如:upload_tmp_dir = d:upload  当然,此时你的d:upload目录必须有读写权限。  
    这里我设置为  
    upload_tmp_dir = c:\temp  (因为前面建立了这个文件夹,我图省事,呵呵)

    B
    出现这样的错误语句一般是因为你的php.ini中关于session.save_path一项没有设置好,解决的方法是将session.save_path和session.cookie_path 设置置为  
       session_save_path = c:\temp  
       session.cookie_path = c:\temp  
       然后在c:\目录下建立一个temp目录,即可(前面我们的eaccelerarot正好用到,建立过这么一个文件夹)
  • 点这里复制本页地址发送给您QQ/MSN上的好友
  • 相关文章
  • 相关评论
  • 本文章所属分类:首页 HBcms使用帮助 如何安装 安装过程及注意事项  免费下载