在Windows2000ADV下配置Apache+PHP5+MySql5

以前为了图方便,是用套件包.版本很久了,是apache1.X.Mysql4.X,PHP4.X的.现在已经过时很久了..而且漏洞一大堆,幸好我只是在本地使用…不过为了追潮流,就鸟枪换炮咯..

所用软件版本:

mysql-5.0.4-beta-win32

apache_2.0.54-win32-x86-no_ssl

php-5.0.3-Win32

phpMyAdmin-2.6.2-rc1

ZendOptimizerWindows-i386

以上软件可以到各大下载网站下载.或者直接登陆官方网站下载.而且配置教程也是一大堆,我就不做详细的技术文献了..

php的官方网站 http://www.php.net/?有中文语言服务,你甚至可以找到最新的中文php手册
php的下载页面 http://www.php.net/downloads.php

apache的官方网站 http://www.apache.org/
apache的下载页面 http://archive.apache.org/dist/httpd/


MySQL作为一款数据库软件最大的特点就是免费,当然他也非常高效,有和php相似的特性
MySQL官方网站 http://www.mysql.com/

phpMyAdmin for Windows V2.6.2

我是到天空软件站下载的:http://www.skycn.com/soft/10687.html

ZendOptimizerWindows,这个是用来解析某些源码和优化的.我是到天空软件站下载的

Zend Optimizer V2.5.7 For Windows:

也是到天空软件站下载的:http://www.skycn.com/soft/20133.html

安装好所有程序后.开始着手配置了.:

首先配置apache2
打开Apache2conf文件夹下面的httpd.conf配置文件
到最后 加入
LoadFile c:/php/php5ts.dll    //加载php5ts.dll,这无论是apache还是IIS都必须以来的链接库
LoadModule php5_module c:/php/php5apache2.dll     //加载php5的apache模块
AddType application/x-httpd-php .php
‘www.knowsky.com
查找DocumentRoot,后面是”C:/Apache2/htdocs”可能因安装路径不同而不同,
是web网页的目录所在地,可改成自己需要的地方,注意,是斜杠”/”不是反斜杠””,毕竟这是linux下面移植过来的
查找DirectoryIndex,后面应该是index.html index.html.var
这是默认的首页名称,要再添加index.php index.htm

然后是配置php
把C:php文件夹下的php.ini-recommended改名,改名为php.ini
PHP.ini:出于安全和效率的考虑,建议使用php.ini-recommended作为php.ini的蓝本,而不要使用php.ini-dist。同时PHP.ini的查找路径也不再限于PHP4时代的%SystemRoot%下了,PHP5按照以下路径查找PHP.ini:

     * PHPIniDir (Apache 2 module only)
     * 注册表键值:HKEY_LOCAL_MACHINESOFTWAREPHPIniFilePath
     * 环境变量:%PHPRC%
     * PHP5的目录 (for CLI), 或者web服务器目录(for
       SAPI modules)
     * Windows目录(C:windows or C:winnt)
这五个方案中,配合Apache2时最好使用PHPIniDir,其次是使用%PHPRC%环境变量,另外,NTFS上记得给服务器开PHP.ini的读权限。
打开php.ini,查找extension_dir后面的改为”C:/php/ext”,看看那个文件夹就知道是什么东西了
查找Windows Extensions,那下面有一排的;extension=php_***.dll
开始去分号了,去掉就是支持组件
起码把
         extension=php_gd2.dll
         extension=php_mbstring.dll
         extension=php_mysql.dll
前面的分号去掉
php5开始默认不支持mysql了,所以我们要为他添加支持,除了extension=php_mysql.dll去分号之外
在php目录里有个libmysql.dll文件,把它复制到系统的system32文件夹下,复制php.ini到windows目录下

以后都是网上的教程..没办法,懒啊..

PHP.ini我是放到c:\winnt\system32下的.PHP是可以解析了.而且MySql也可以正常运行.只不过我原来是开了IIS的.已经占了80端口,所以我安装Apache的时候是选择了8080端口.而且不是把Apache加载成服务..

但运行phpmyadmin的时候却显示:无法载入 mysql 扩展,请检查 PHP 配置.

肯定是连接Mysql的时候出问题了.先用点笨一点的方法,修改一下phpmyadmin的配置文件,打开config.inc.php,找到:$cfg[‘Servers’][$i][‘host’],填上本机地址,一般填localhost就可以了.下面的选项例如user,password也配置好.

重启Apache,还是老样子,不行,看来是PHP.ini出问题了.找到:extension=php_***.dll,这些是扩展文件,我把大部份的扩展前面的的’ ; 去掉了,让它支持更多的扩展..死马当活马医哦..呵呵..再重启Apache,又一次失望..

想到头都晕了,就想不到那里出错,PHPIniDir和%PHPRC%都没问题了.哎.不管了,把PHP.ini复制一份,放到c:\winnt下,然后再把Apache安装成服务:

CMD下运行:c:\Apache_PHP\Apache group\Apache2\bin\Apache.exe -k install

然后:c:\Apache_PHP\Apache group\Apache2\bin\Apache.exe -k  restart

弹出很多错误信息的对话框,提示说找不到php_bz2.dll之类的文件,狂点击鼠标后..奇迹出现了,可以进入phpmyadmin的首页了..看来真有点运道…

主要问题也解决了.接着下来是清扫一下,把PHP.ini文件下的extension=php_***.dll重新加上’ ; ‘号,把它们注释掉,用不着这么多扩展,只留下必要的:

         extension=php_gd2.dll
         extension=php_mbstring.dll
         extension=php_mysql.dll


再重启一次Apache,还是提示缺少:php_mbstring.dll等文件.这个好办,把php\ext下的php_mbstring.dll,php_mysql.dll复制到c:\winnt\system32\下,重启Apache,一切OK~!只是在phpmyadmin的首页下看到用大红色的字提示:必须在您的配置文件中设定 $cfg[‘PmaAbsoluteUri’] 指令!

这个so easy,找到phpmyadmin的config.inc.php,这个是phpmyadmin的配置文件,找到:$cfg[\’PmaAbsoluteUri\’],填上你的phpmyadmin的相对路径,例如:localhost\phpmyadmin,按F5刷新一次,that’s all right…

以上配置过程花了我两三个小时,之后我又尝试把c:\winnt下的php.ini拷到c:\winnt\system32下,又出现:无法载入 mysql 扩展,请检查 PHP 配置. 这个错误提示…看来php5跟php4真有点不同.