查看文章
 
Windows下Apache2+MySQL5+PHP5的安装
2009-10-23 22:26
我用的版本和安装的目录分别是:
Apache 2.2.3安装版,安装在 D:\php\apache2
MySQL 5.0.27安装版,安装在 D:\php\MySQL5
PHP 5.2.1解压版,安装在 D:\php\php5
最后用了phpMyAdmin v2.10.1-rc1做测试。
Apache和php现在新版本的配置,与以前有点不同,不过也只是一些细微的差别,这篇笔记是以这些版本和路径为条件记录的。网上也有很多配置教程,但是我怀疑有些写文章的人,自己都没有动手配置过,都还是抄袭以前的配置方法。

至于这些软件的下载,就不多说了。网上很多地方可以下载得到。
下面就分4步来:

一、Apache 2.2.3的安装.

1.先是安装:
1.这个其实比较简单,运行安装文件后,选择Next;然后是安装协议,选择“I accept the……”,点Next;然后要阅读一个申明,反正是E文也看不懂,直接Next;
2.接下来这里需要填写几个参数,我就填写了第二个“Server Name”和第三个“Administrator‘s Email Address”,分别写上自己的计算机名和E-mail地址就可以了。下面还有一个选项,选第一个,大概意思就是所有用户安装和选择服务器的端口为80端口。再点Next;
3.接下来选择安装方式,Typical(典型)和Custom(自定义),选择典型就可以了,Next;
然后到选择路径了,点击“Change...”,指定目录为D:/php/apache2/,Next,然后再点击Install进行安装。中间会弹出2个DOS窗口会自动关闭,然后提示安装完成。
4.点确定后,右下角会出现Apache的图标了,呈现这样表示安装成功,且服务器已经启动了。

2.Apache的配置文件httpd.conf:
Apache的配置文件为:D:\php\apache2\conf\httpd.conf
配置文件可以用记事本打开。
配置文件修改后,要记得重启Apache服务器,配置文件才会生效。
                         ↓  
3.httpd.conf的一些参数:
Listen 80  
//Apache的IP地址和端口。一般来说不需要设置,Apache会绑定在本机所有IP地址的80端口上。
ServerName webadmin:80
//Web服务器的名字。安装时输入的“Server Name”就是保存在这里。
DocumentRoot "D:/php/apache2/htdocs"
大约下去30行还有一行代码:
<Directory "D:/php/apache2/htdocs">
//这2行都表示网站的根目录。如果您想把网站文件存放在“D:\php\web”目录下,那么需要把2行的“D:/php/apache2/htdocs”都替换成“D:/php/web”。注意:一定2个都要更改,不然会发送访问拒绝的错误。
Options Indexes FollowSymLinks
//为了安全起见,请把上面的“Indexes”删掉。它会把你网站的目录和文件全部列表出来。
DirectoryIndex index.html
//默认首页文件名。可以在index.html后面添加 index.htm index.php
ScriptAlias /cgi-bin/ "D:/php/apache2/cgi-bin/"
//CGI文件存放路径。


二、MySQL 5.0.27的安装.

1.运行MYSQL.V5.0.27.exe,安装界面启动后,选择Next
2.出来3种安装模式选择:Typical(典型),Complete(完全),Custom(自定义),选择Custom(自定义),然后Next
3.点击“Change..”,指定路径为D:\php\MySQL5,然后Next,再点击Install开始安装
4.安装完之后,会提示是否上MySQL.com注册,可以不去注册,选择“Skip sign-Up”,然后Next
5.Configure the MySQL Server now(现在开始配置MySQL服务器),打勾,点击Finish
    这里也可以不先配置,就在 开始--所有程序--MySQL--MySQL Server 5.0--MySQL Server Instance Config Wizard,同样可以配置。
6.再点击Next,开始配置,2个选择:Detailrd Configusation(详细配置),Standard Configuration(标准配置),选择Detailrd Configusation(详细配置),然后点击Next
7.有3个选择,指定安装MySQL这台计算机的类型:Developer Machine(开发服务器)--占用尽量少的内存;Server Machine(web服务器)--占用中等内存;Dedicated MySQL Server Machine(专用MySQL服务器)--表示这台计算机是一台专门的MySQL服务器,将占用全部内存。
我这里既然要安装Apache,那么选择Server Machine(web服务器),然后Next
8.选择数据库的用途,3个选择:Multifunctional Database(多功能数据库),Transactional Database only(事务处理数据库),Non-Transactional Database only(非事务处理数据库)
一般选择第一种Multifunctional Database(多功能数据库),然后Next
9.选择InnodDB的数据存放位置,默认为“Installation Path”即可,然后Next
10.选择mysql允许的最大连接数,可以根据自己的需要选择,默认即可,然后Next
11.数据库连接端口,默认3306即可,如果这里修改了,那么以后程式连接数据库的时候,也要做相应的修改。直接Next
12.设置mysql的默认编码,我们选择最后一项Manual Selected Default Character Set /Collation,然后在下拉框选择gb2312,再Next
13.选择是否要把mysql设置成windows的服务,建议选择设成服务,这样以后就可以通过服务中启动和关闭mysql数据库了。
再把下面的选项“Include Bin Directiory in Windows PATH”勾上,这样以后在CMD下执行MySQL的命令,不需要到它的具体目录下执行。
14.设置超级用户root的密码,超级用户root对mysql拥有全部的权限,密码填写2次。
      密码框下面的选项Enable root access from remote machines(是否允许远程机器用root用户连接到你的mysql服务器),看具体需要选择。
下面的选项Create An Anonymous Account(创建一个匿名帐号),这个勾选上之后,MySQL会创建一个匿名用户,匿名用户可以连接,但是不能操作修改数据库。可以不选。
15.都配置好了,就看最后的结果了,现在开始启动MySQL了,选择Execute。
     主要看第三个Start Service,这也是最易出错的地方。如果出错,建议卸载MySQL,再把安装目录内的文件全部删除,重新安装一次。
正常的话,点击Finish关闭,我们的MySQL就成功安装并运行起来了。


三、PHP 5.2.0解压版的安装.

PHP我就不用安装版了,直接用解压版。
1.下载并解压:
     下载PHP 5.2.1解压版之后,解压得到一个叫php5.2.1的文件夹,把这个文件夹复制到D:\php目录下,并改名为php5,于是我们的PHP路径就为D:\php\php5了.

2.文件复制:
      把D:\php\php5目录下libmysql.dll、php5ts.dll复制到C:\windows\system32\下
      把D:\php\php5\ext目录下php_gd2.dll、php_mysql.dll、php_mbstring.dll复制到C:\windows\system32\下
      把D:\php\php5目录内为php.ini-dist的文件,把它复制到C:\Windows目录内,并改名为php.ini

3.php.ini的配置:
现在用记事本打开C:\windows\php.ini文件,开始配置
                         ↓  
4.php.ini的一些参数:
extension_dir = "./"
//指定extension的目录,我们这里把“./”修改成“D:/php/php5/ext”
;extension=php_gd2.dll
;extension=php_mysql.dll
;extension=php_mbstring.dll

//这些组件的运行设置,把前面那个“;”符合去掉,就可以了。
register_globals = Off
//默认是Off,改成On。
cgi.force_redirect = 1
//修改成cgi.force_redirect = 0,这样做是强迫不运行在cgi模式下。

5.配置httpd.conf,让Apache支持php
再打开Apache的配置文件D:\php\apache2\conf\httpd.conf,在httped.conf最后加入如下3行,让Apache支持php5:
LoadFile D:/php/php5/libmysql.dll
LoadModule php5_module D:/php/php5/php5apache2_2.dll
AddType application/x-httpd-php .php

//1.很多网站说加LoadModule php5_module D:/php/php5/php5apache2.dll那是错误的,php5apache2.dll 那是支持 5.14版的,apache到2.2以后和以往的配置不同了。
2.我开始还在上面加了一句PHPIniDir "D:/php/php5",但是加了这句之后,出了很大的问题,C:\Windows\php.ini里面的设置都加载不了,包括MySQL。把这句删除之后,重启Apache,马上就好了。


四、phpMyAdmin v2.10.1-rc1的安装.

我想用php的人都知道phpMyAdmin吧
phpMyAdmin 是一个用PHP编写的,可以通过互联网控制和操作MySQL。通过phpMyAdmin可以完全对数据库进行操作,例如建立、复制/删除数据等等。
有了phpMyAdmin 就可以完全不使用mysql命令,直接使用phpMyAdmin就能管理mysql的所有数据和数据库。

我现在用的版本是phpMyAdmin v2.10.1-rc1。下载之后解压,得到一个名为phpMyAdmin-2.10.1-rc1-all-languages-utf-8-only的文件夹,为了方便,我把文件夹改名phpMyAdmin,其实这个名字可以任意改的,只要你访问的时候记住相应路径就可以了 。
我开始已经把Apache的web目录指到D:\php\web目录了,所以就把前面的phpMyAdmin文件夹复制到D:\php\web目录下。

现在配置phpMyAdmin的数据库参数,数据库配置好之后,就可以用了。
打开目录内/libraries/config.default.php文件(用记事本或者Dreamweaver或者其他的文本编辑软件都可以),找到如下的代码,我这里是从第55行开始的,比较靠前-----只要配置下面红字部分的就可以(后面有注释,很容易懂,我去掉了)
$i++;
$cfg['Servers'][$i]['host']            = 'localhost';     //MySQL服务器IP
$cfg['Servers'][$i]['port']            = '';                //MySQL连接端口
$cfg['Servers'][$i]['socket']          = '';
$cfg['Servers'][$i]['ssl']             = false;        
$cfg['Servers'][$i]['connect_type']    = 'tcp';
$cfg['Servers'][$i]['extension']       = 'mysql';
$cfg['Servers'][$i]['compress']        = FALSE;
                                                    
$cfg['Servers'][$i]['controluser']     = '';  
                                                    
$cfg['Servers'][$i]['controlpass']     = '';  
                                                    
                                                    
                                                  
                                                    
$cfg['Servers'][$i]['auth_type']       = 'config';
$cfg['Servers'][$i]['user']            = 'root';             //用户名
$cfg['Servers'][$i]['password']        = '';               //密码



配置好之后,保存退出。
然后在地址栏敲入 http://服务器ip/phpMyAdmin
如果出现正常的界面,表示一切都大功告成。
以后也可以通过phpMyAdmin来管理MySQL服务器了。

下次我会学习一下Apache的高级应用,比如配置多域名的虚拟主机;以及会在Linux环境下配置Apache2+MySQL5+php5。到时候也会把笔记整理发上来。

---------------------------------------------------------------------------------------------
*碰到的一些问题以及解决办法.

1.今天测试一个叫netoffice的程序的时候,安装完成之后,底部出现下面一行或者二行错误提示:

. PHP Warning [PHP]:: mysql_query() [http://www.mysql.com/doc]: Duplicate entry '75cb9ac339ef372e858b42f1ea25f7e9-192.168.0.19' for key 1 in file D:\php\web\netoffice\includes\library.php line 1173

. PHP Warning [PHP]:: Unknown: 1 result set(s) not freed. Use mysql_free_result to free result sets which were requested using mysql_query() in file Unknown line 0


解决办法:
打开C:\Windows\php.ini
查找 mysql.trace_mode
看那句是不是 mysql.trace_mode = Off
如果是on,就改成off
然后重启Apache,即可解决。

再来个视频下载地址:http://www.webjx.com/upfiles/20070312/20070312213729_006.swf


类别:Mssql||添加到搜藏 |分享到i贴吧|浏览(326)|评论 (0)
 
最近读者:
 
网友评论:
发表评论:
姓 名:
网址或邮箱: (选填)
内 容:
     

   
帮助中心 | 空间客服 | 投诉中心 | 空间协议
©2012 Baidu