配置环境如下:
Win2003SP2+IIS6+php5.26+mysql5.0.51a+zend3.3a+PhpMyAdmin2.11.7.1
PHP执行方式:isapi。Mysql为手动安装。

我们就需要找到是哪一个DLL文件加载出现了问题。排查方法是:

关于“内存位置访问无效”的
错误解决办法与步骤:(一些部份无效的调试步骤略过..)

将php.ini中 display_startup_errors = Off 改为display_startup_errors
= On 。
这是访问php页面,服务器上会弹出php错误的提示对话框,你就可以明确看到是哪一个dll文件加载失败,有时会有多个dll文件加载失败,需要你先分号(;)注释掉php.ini中提示那个dll后继续访问如此反复排查。
把出问题的dll都用分号(;)注释掉后,php就可以正常运行了。

一、将IIS的错误显示打开,未发现错误原因!

如果加载失败的dll是你必须使用的扩展库文件,那么就要从版本是否对应、文件是否齐全、文件是否已损坏等等方面去排查加载失败的原因了。不同的扩展具有不同的情况,这里就无法一一罗列了,记住:搜索引擎是你最好的帮手,针对单个dll去搜索解决的方法吧。

二、检查IIS扩展,ISAPI、php.ini与Mysql配置以及相应的安装目录ACLs权限,均无误。

另外:新版本的Windows版本PHP,在出现错误时,会将详细的错误信息自动存储到Windows系统的TEMP临时目录,文件名为:php-errors.log。在Windows2003系统中路径一般是:C:\WINDOWS\Temp\php-errors.log。用记事本打开这个文件,就可以看到详细的php错误记录了。

三、回收IIS进程,错误仍然出现”内存位置访问无效”….

此处往下是从网上转载的内容:

Author

发表评论

电子邮件地址不会被公开。 必填项已用*标注