LiXianlin's Spaces

Trust me!I can fly!

原创 Apache+PHP+MySQL在Windows XP下的安装与配置收藏

网上有很多类似的文章,要么过时了,要么不全面,新手看了很难懂,而且不明白其中的道理。因为我也是刚接触不久,深有体会,所以写下了这篇文章,希望对新手有所帮助。
===================相关信息=============
      操作系统:Windows XP SP2
                  IIS:未安装
Apache版本:2.2.8    下载 (安装在C:\Program Files\Apache Software Foundation\Apache2.2)
     PHP版本:5.2.5    下载 (安装在C:\php)
MySQL版本:5.0.51a下载 (安装在C:\Program Files\MySQL\MySQL Server 5.0)

====================================

软件的安装很简单,按提示一步一步操作,一般不会出什么问题,这里略过,主要讲一下如何配置。软件安装成功后,在IE地址栏中输入
http://localhost测试应该会看到“It works!”,说明Apache安装是成功的。你应该根据你的安装路径做相应的修改。

(1)httpd.conf配置
打开httpd.conf,找到#LoadModule vhost_alias_module modules/mod_vhost_alias.so,在它的后面添加以下内容:
LoadModule php5_module "C:/php/php5apache2_2.dll"
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
PHPIniDir "C:/php"


找到DocumentRoot "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs",修改成Web文件的存放路径,如我的Web文件存放在F:/WebRoot目录下,就修改成:
DocumentRoot "F:/WebRoot"

找到<Directory "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs">,修改成Web文件的存放路径,跟上面的路径相同,修改成:
<Directory "F:/WebRoot">

找到DirectoryIndex index.html,添加index.php:
DirectoryIndex index.html index.php

(2)php.ini配置
在PHP的安装目录下有php.ini-dist(默认配置)和php.ini-recommended(推荐配置)两个预置的配置文件,它们之间的区别是:推荐配置在安全性方面有所加强。根据需要选择,初始配置时最好选择php.ini-dist(因为它是默认的*^_^*),复制并将其重命名为php.ini,就放在PHP的安装目录。(注意:php.ini-recommended中的short_open_tag是关闭的,这意味着标签<? ?>中的内容是不能被解析的,这种情况下查看PHP网页的源文件,看到的内容会跟你的源代码是一样的,正确的方法是使用<?php ?>,也推荐大家使用此标签。)

打开php.ini,找到extension_dir = "./",修改成:
extension_dir = "C:/php/ext"

找到;extension=php_mysql.dll,把;去掉:
extension=php_mysql.dll

(3)libmysql.dll
将PHP目录下的libmysql.dll复制到%SystemRoot%/System32/目录中。用MySQL的bin目录中的libmysql.dll也行。

注意:
1.由于我安装的Apache版本是2.2.8,所以LoadModule语句应选择php5apache2_2.dll,否则会出现错误“The request operation has failed!”。网上很多相关文章中的Apache版本都2.0.XX的,他们选用的模块都是php5apache2.dll,不能够照搬,应该根据实际使用的Apache版本来选择该使用哪个dll文件。

2.PHPIniDir非常重要,其实PHPIniDir就是设置“php.ini”配置文件的路径,在httpd.conf中配置PHPIniDir,或者在注册表中设置,或者设置PHPRC环境变量,或者直接复制php.ini到%SystemRoot%目录中都是可行的。php.ini是按“httpd.conf中PHPIniDir指定的路径->HKEY_LOCAL_MACHINE\SOFTWARE\PHP\IniFilePath(Windows注册表位置)->PHPRC环境变量->当前工作目录(对于CLI)->%SystemRoot%目录”的顺序来搜索的。一个好的办法是用phpinfo()来检查php.ini文件的路径是否配置正确,看“Configuration File (php.ini) Path”和“Loaded Configuration File ”。如果配置不正确或没有配置“Loaded Configuration File”将显示“none” ,如果没有配置PHPIniDir,则按默认的设置加载。

3.有些文章中说配置中牵涉到路径时该用“/”或“\”的问题,我测试好象并无问题,正反斜杠都没问题,不知道在低版本或Linux中是否也一样。

4.不要忘了配置php.ini文件中的
extension_dir和去掉;extension=php_mysql.dll前面的分号。

5.错误“
Fatal error: Call to undefined function mysql_connect() in XX on line YY”的大概意思是“致命错误:在XX文件YY行调用了未定义的函数mysql_connect()”,很显然是没有加载libmysql.dll引起的,跟php.ini文件的配置密切相关的,如果找不到libmysql.dll也会导致此错误(换句话说,就是libmysql.dll放的位置有问题。看(3)中说明)。

6.以上仅是个人之见,要想获得更多的信息,请访问他们的官方网站。

附:
Apache官网:
http://www.apache.org/
     PHP官网:http://www.php.net/
MySQL官网:http://www.mysql.com/
 

发表于 @ 2008年04月07日 20:41:00|评论(loading...)

新一篇: document.body.scrollTop总是0的问题及最佳解决方案 | 旧一篇: AV终结者病毒大全及防范

用户操作
[即时聊天] [发私信] [加为好友]
LiXianlin
订阅我的博客
XML聚合  FeedSky
LiXianlin的公告
 
点击这里给我发消息
文章分类
收藏
一些不错的网站
Anti-Spyware Sofeware Review
Anti-Virus Sofeware Review
CSS在线手册
DHTML在线手册
FMOD
Google Maps API 参考
JavaScript在线手册
MSDN Library
OGRE 3D
OGRE 3D 中文
PHP在线手册
Virus Bulletin
XML在线手册
Yahoo!字典
华夏黑客同盟
爱词霸
看雪软件安全
第八军团
黑客基地
存档
Csdn Blog version 3.1a
Copyright © LiXianlin