windows apache§mysql§php§Zend§phpmyadmin
时间:2006-02-24 来源:lenlydia
(一)windows下安装apache+mysql+php
-------------------------------------
平时都是上网找windows下apache+php+mysql的安装配置过程,但是大多数都是转载来转载去。今天自己写一个 安装环境windowsxp(sp2)
先在网上下载apache_2.0.55-win32-x86-no_ssl
mysql-essential-4.1.15-win32
php-5.0.5-Win32 一、apache安装很简单,一路下一步。
二、mysql也一样,先要在mysql注册一个帐号,(我的帐号是[email protected],99)
安装完了之后会在开始---程序里有一个mysql程序,把mysql command line client发送到桌面,方便打开
输入安装时的root密码,即可。
三、把php解压到c:\php 下 再把c:\php 下php.ini-dist的重命名为php.ini复制到c:\windows下 php5ts.dll 和libmysql.dll拷贝到apache的bin 目录下。 配置文件httpd.conf
设置DocumentRoot(网站目录,也就是你机器上那些让人浏览的网页所在目录)比如:
DocumentRoot "F:\Http"
?? ServerAdmin //这里可修改"信箱"信息
?? ServerName //主机名信息
?? Listen 80 //这里为apache的默认端口,为了避免开机器后和IIS发生冲突,可以改IIS的端口号,或改apache此处的端口号
?? LoadModule //之后新添加一行: LoadModule php5_module c:/php/php5apache2.dll
?? (注意这里的C:/php...的路径根据实际情况输入)
?? AddType application/x-tar .tgz //在此后一行添加:AddType application/x-httpd-php .php .php3 .php4
?? DirectoryIndex * //这一行是添加默认的文件名:DirectoryIndex index.php default.php index.htm index.html default.htm default.html
?? apache1.x版本的有时中文无法正常显示,
?? 最好的解决办法是:修改了Apache中conf/httpd.conf文件,查找 AddDefaultCharset ISO-8859-1
??并且改成 #AddDefaultCharset ISO-8859-1 AddDefaultCharset GB2312
??注意使用dreamweaver做出的文件多有:
??
??其实这样往往导致文件中中文成乱码!!因为:http.conf中355行 DefaultType text/plain而不是text/html,所以手动修改成 text/plain即显示中文。 每做一次修改建议重启一下apache,不然出了问题无法判断是出在哪里了
然后,修改php.ini (1) 改 extension_dir = "./" (这个是php的ext目录所在位置)成為 extension_dir = "c:/php/ext"
(2) 改 ;extension=php_mysql.dll 去除分號成為 extension=php_mysql.dll
php装完了。在你的网站目录下(比如:F:\http),建一个文本文件,内容如下:
<? phpinfo(); ?>
保存为info.php。首先,重新启动apache服务器(也就载入php);然后,在浏览器里输入: http://localhost/info.php
如果看到PHP的欢迎测试页面,说明安装成功 可以用我的那篇php mysql连接代码测试安装是否成功 (转载)原理:
Apache 會啟動並載入 httpd.conf
跑到 LoadModule 會使用 Windows API LoadLibrary 載入 php5apache2.dll
接著會載入同目錄的 php5ts.dll
然後會載入 php.ini 根據裡面的設定載入其他 extension dll
各個 extension 的 dll 被載入後, 如果該 extension dll 還需要載入相關的 dll
則其他需要的 dll 要放在 apache 的 bin 目錄下
因為 Apache 使用 Windows API LoadLibrary 來載入 DLL 檔,
搜尋路徑是以 bin 為最優先, 其次是 SYSTEM32) -------------------------------------
(二)Windows XP下全新安装Apache2,PHP5,MYSQL5,Zend的简单过程 -------------------------------------
一、下载地址:
Apache2.0.50 :http://httpd.apache.org/download.cgi
PHP5.0.2 :http://cn2.php.net/get/php-5.0.2-Win32.zip/from/a/mirror
MYSQL5.0.2:http://dev.mysql.com/downloads/mysql/5.0.html
Zend2.5.2 :http://www.zend.com/store/free_download.php?pid=13]
软件的安装偶就不说了,其中只有PHP下的是zip包,直接解压就可以了。
安装顺序就是上面列出来的顺序,Zend我是最后等所有的运行都没问题后才装的。
二、简单安装过程:
(一)Apache:
Apache2.0.50的安装很简单,我就直接把他装到了E盘根目录下(我C盘是系统盘,D盘是temp盘,偶发现在windows下单独拿个分区来做临时文件的存放地对系统的速度影响不小,这样做能提升系统运行的速度,感兴趣的朋友可以试试看),安装完后我的apache目录就是E:\apache2
(二)PHP:
我是直接解压缩放到E盘php目录下了,这样查找文件会方便许多。
(三)Mysql:
直接装到E:\mysql下,它的默认目录太长,是在C盘下的,偶的C盘是除windows的文件外别的一概不放的。
(四)Zend:
所有的调试都正常后我把Zend装到了E:\program files\zend下
三、配置过程:
(一)http.conf
这个文件我改了几个地方:
把PHP直接作为apache的一个模块运行,我在里面加了两句:
CODE: [Copy to clipboard]
LoadModule php5_module "E:/php/php5apache2.dll"
AddType application/x-httpd-php .php
我在E:\apache2目录下建立了一个www的目录用于存放我的站点文件,在http.conf里改了这样一句话:
把DocumentRoot "E:/Apache2/htdocs"改成了DocumentRoot "E:/Apache2/www"
Apache2.0.x于1.3.x相比2.0.x默认不能直接列目录,偶感觉不爽,就改了:
把DocumentRoot "E:/Apache2/www"这句下的如下语句
CODE: [Copy to clipboard]
Options FollowSymLinks
AllowOverride None
改为:
CODE: [Copy to clipboard]
Options Indexes FollowSymLinks
AllowOverride None
把apache的默认字符设置为中文简体:
AddDefaultCharset GB2312
修改目录的默认首页:
DirectoryIndex 后面写上你想设置为首页的文件名,如:index.html index.php等
别的就没再动什么地方
注意一点的是,要使这些配置生效需要重新启动apache
(二)php.ini
以前用php4.x的时候觉得配置起来很简单,所以偶用PHP5也直接那么配了,谁知道完了mysql不能用,说是无法连接动态库,我仔细检查了一下 php_mysql.dll明明存在,可就说找不到,这点让我郁闷了N久,偶重新解压了php5也没用,后来在php的install文档里发现了这么一句话: php_mysql.dll MySQL functions PHP >= 5.0.0, requires libmysql.dll (bundled)
于是偶才找到了原因......
配置php5.0.2是这样来过的:
把php.ini-dist复制到C:\windows 下改名为 php.ini(装过php的都做过吧)
然后修改了几个地方:
extension_dir = "E:\php\ext" (指定动态连接库的目录,php5和php4不同的地方就是它的动态连接库目录变了,这在它的文档结构里有详细的说明)
然后把下面几句前面的分号去掉
;extension=php_dba.dll
;extension=php_dbase.dll
;extension=php_filepro.dll
;extension=php_gd2.dll
;extension=php_imap.dll
;extension=php_mysql.dll
接下来修改了一些文件上传以及内存使用最大限制:
memory_limit = 20M
post_max_size = 20M
upload_max_filesize = 20M
别的就没改什么了,这里修改过php.ini以后也要重新启动apache
接下来一点很重要的就是把php目录下的 libmysql.dll 和 libmysqli.dll 复制到windows/system32下,如果不这样做,mysql动态连接库就无法正常加载。
(三)Mysql和Zend的配置
现在Apache和PHP都已经配置好了,在浏览器里输入localhost看看结果,运行成功,然后输入localhost/phpmyadmin看也成功。郁闷,Phpmyadmin提示错误信息:
QUOTE:
MySQL 返回:
#1251 - Client does not support authentication protocol requested by server; consider upgrading MySQL client
奇怪了,偶明明装的是MYSQL最新版本怎么会客户端版本过低呢,真是郁闷啊
就此放了一下,经多次测试仍然不成功就先放弃了一下,玩了一把KOF97
然后在CCF.熊猫和IM286.ceo的帮助下,终于找到了原因:
落伍ceo:“升级客户端
新版本的mysql使用了新的密码验证方法
设置mysql密码时使用old_password可以解决这个问题”
CCF.熊猫:“使用old_password”重新设定密码就可以了”。
感谢这两位朋友,具体解决办法如下:
由于偶不知道怎么升级client,因为在windows 下 server和client是捆绑安装的,我就用了old_password的方法:
QUOTE:
mysql> UPDATE mysql.user SET Password = OLD_PASSWORD('newpwd')
-> WHERE Host = 'some_host' AND User = 'some_user';
mysql> FLUSH PRIVILEGES;
然后浏览“http://localhost/phpmyadmin”,OH YEAH! 测试成功!
(三)PHP5+MYSQL5+APACHE2+phpMyAdmin-2.7.0+ZendOptimizer, WINDOWS下装法! -------------------------------------
注:以下此法只能用于PHP5的安装!不适于PHP4,如果想有关PHP4的话!
PHP5和PHP4的不同点:
1:php5和php4不同的地方就是它的动态连接库目录变了
2:PHP5并不像PHP4那样默认支持MYSQL!
因此PHP5比较烦!
配置为:
apache_2.0.55-win32-x86-no_ssl.msi http://www.apache.org
mysql-5.0.16-win32.zip http://www.mysql.com
php-5.0.5-Win32.zip http://www.php.net
ZendOptimizer-2.6.0-Windows-i386.exehttp://www.zend.com/
phpMyAdmin-2.7.0.zip
注:要支持MYSQWL5。0以上,ZendOptimizer要为2。6以上版本!
第一步:安装apache2
apache安装成功测试方法:在地址栏打入http://localhost/ 看到页面,表示
成功!
这没有什么可说的了!
主要是设一下httpd.conf文件(在C:\apache2\Apache2\conf这是我的安装路径)
注:最好是完成PHP5的安装后才设httpd.conf文件。就是做完以下第二步后!
用记事本打开它,也可以用一个叫EditPlus的软件打开!
php一直都存在两种运行方式:
一:以apache模块方式运行(Installing as an Apache module)。它的好
处是运行速度,本人也喜欢,推荐这种方式
二:以cgi 方式运行(Installing as a CGI binary)。php3 在windows环
境下只能以这种方式,而以后的版本则没有该限制.
以下用第一种方式:
1:在httpd.conf文件最后加上以下代码:
LoadModule php5_module "c:/(php安装路径名)/php5apache2.dll"
AddType application/x-httpd-php .php
2:在httpd.conf文件中:
找到DocumentRoot:'C:/apache2/Apache2/htdocs'
改为DocumentRoot:'c:/web/' 不改也可以,这是改网页存放地址,我的
主要放在c:\web\里!
3:找到DirectoryIndex index.html之后加上 index.php (这些表示当打开网页
时的默认查找顺序)
4:重启apache
二:安装PHP5
1:解压到你想放的目录:本人的为C:\php
2:把php5目录下的 php5ts.dll和php.ini-dist 拷贝到windows 的系统目录下,
就是Windows(XP/2000)或Wint(98)
3:把php.ini-dist名改为php.ini
4:安装成功测试方法:新建记事本文件改名为index.php 请注意格式为 *.php
打开。写入如下内容:
<?
phpinfo();
?>
保存到c:\web下,这是改网页存放地址
在地址栏下打入http://localhost/index.php看到页面,表示成功!
三:安装MYSQL5
1:在WIN装好后!在windows 的系统目录下,就是Windows(XP/2000)或Wint(98)
建一个名为my.ini的文件
输入如下内容:
[mysqld]
basedir=c:/Program Files/MySQL/MySQL Server 5.0/
datadir=c:/Program Files/MySQL/MySQL Server 5.0/data
[WinMySQLAdmin]
Server=C:/Program Files/MySQL/MySQL Server 5.0/bin/mysqld-nt.exe
注:C:/Program Files/MySQL/MySQL Server 5.0/为MYSQL的安装路径。根据你自
己的定!建此文件的目的是为了使MYSQL为WIN系统服务并隋开机启动,很重要的
!
保存!
2:运行--cmd 打开DOS
先后输入
cd \
cd C:/Program Files/MySQL/MySQL Server 5.0/bin(MYSQL的安装路径)
mysql-nt --install
net start mysql
退出。
重启apache!
3:让PHP5支持MYSQL5:
打开在windows 的系统目录下的php.ini文件
找到extension_dir = "./" 改为 extension_dir = "d:/(php安装路径)/ext"
找到;extension=php_mysql.dll 去掉前面的;
保存!
4:接下来一点很重要的就是把php目录下的libmysql.dll复制到windows/system32
下,如果不这样做,mysql动态连接库就无法正常加载。
重新启动apache!
5:测试是否成功!
在c:\web下建文件test.php
内容为:
<?php
$link=mysql_connect('localhost','root','123456');
if(!$link) echo "fail";
else echo "success";
mysql_close();
?>
保存!
在地址栏打入http://localhost/test.php 显示success时就可以的,当然
你也可以用phpMyAdmin来测!
四:phpMyAdmin
解压到c:\web下,在地址栏打入http://localhost/phpMyAdmin/就可以管理
MYSQL5了!
五:ZendOptimizer
这个不一定要装,它的主要功能为:
1:加速PHP文件执行!
2:能显示被Zend Encode加密的PHP代码!这点很重要!
到此已经完成了PHP5+MYSQL5+APACHE2+phpMyAdmin-2.7.0+ZendOptimizer-2.6.0-
Windows-i386.exe环境构建!
——-----------------------------------
留在最后:按道理是要标明转载处,但我个人闲麻烦,而且,本人也是为了资源共享,希望原作者&朋友们理解一下。以后本人的blog,都不会标注出去。望大家谅解。TKS
Len -------------------------------------