qiyuandu 2011-09-03
在学校搭建apache+php+mysql环境,时遇到php5ts.dll错误问题。
一、平台
操作系统:windows2003Enterprice.
Apache:2.2.20,安装包使用httpd-2.2.17-win32-x86-on_ssl.msi.
PHP:5.2.17,采用apache模块方式,安装包使用php-5.2.17-Win32-VC6-x86.msi.
Mysql:5.0.51a,已经安装.
二、安装
按常规将apache安装在d:/programfiles,安装后httpd.exe成功启动。
按常规将php安装在d:/programfiles,选择apache模块方式。
安装后,打开apache的httpd.conf文件,找到
PHPIniDir""
LoadModulephp5_modulephp5apache2_2.dll
改为:
PHPIniDir"d:/programfiles/php/"
LoadModulephp5_module"d:/programfiles/php/php5apache2_2.dll"
三、错误
用apachemonitor启动apache2.2时,出现错误。
打开apache2.2/logs/error.log,显示记录为:
[warn]pidfileD:/ProgramFiles/ApacheSoftwareFoundation/Apache2.2/logs/httpd.pidoverwritten--UncleanshutdownofpreviousApacherun?
处理:
1,重启服务器,重启apache--相同错误
2,打开apache的httpd.conf文件,注释php配置,重启apache--可以启动
打开Windows的事件查看器/应用程序中显示为:
错误应用程序httpd.exe,版本2.2.20.0,错误模块php5ts.dll,版本5.2.17.17,错误地址0x000f424c。
处理:
dll常规错误的处理,path路径中没有其他php.ini,没有发现问题。
打开C:\Windows\Temp\php-errors.log,没有错误提示!!
再次回到php.ini中,将所有扩展模块注释掉:
[PHP_CURL]
;extension=php_curl.dll
[PHP_GD2]
;extension=php_gd2.dll
[PHP_MBSTRING]
;extension=php_mbstring.dll
[PHP_MYSQL]
;extension=php_mysql.dll
[PHP_MYSQLI]
;extension=php_mysqli.dll
重新启动apache,成功。
逐个开启扩展模块,重新启动apache.
发现开启php_mysql.dll出错.
看情况,应该是php调用mysql模块出错。通过命令行操作mysql完成正常。最后怀疑是版本问题,重装底版本的php问题解决。
<?php. if (!empty($_POST)) {. $data1 = $_POST["data1"];$data2 = $_POST["data2"];$fuhao = $_POST["fuh