Apache+PHP+MySQL服务器在Windows上模块方式架设
目前有很多整合了Apache、PHP、MySQL等的软件,比如:FoxSerV、Wampp等,有的做得还不错。但是那都是别人做的,而且只适合Windows,在Linux下的话就得配置。所以我们先在Windows下练习一下配置,明白一些原理。
有两种方式使 PHP 工作于 Windows 下的 Apache。一种是 CGI 方式(php.exe),另一种是使用 Apache 模块 DLL。在 CGI 方式下,你的服务器可能会受到几种攻击的影响。值得指出现在 Windows 下的 SAPI 模块更加稳定了,我们推荐使用模块方式,因为更加透明和安全。
一、准备软件。
首先准备好以下软件(软件版本是写此文时比较好的搭配,以后可自行选择更好的搭配):
官方站点都是国外的,用代理可以上。但是我们可以从ftp://ftp.tsinghua.edu.cn下载。
1、 Web服务器Apache,本次使用apache_1.3.33-win32-x86-no_src.msi。
官方站点:http://www.apache.org
注意:Apache 2.0系列版本有一定的优点,但仍不够成熟,PHP手册中这么提示:在企业级应用中无论是 Unix 还是 Windows 都不要使用 Apache 2.0 和 PHP 的组合。
2、 服务器端脚本语言PHP,本次使用php-4.3.10-Win32.zip。
官方站点:http://www.php.net
注意:目前流行的是PHP4,尽量使用新版本。PHP5也很不错了。
3、 数据库服务器MySQL,本次使用mysql-4.0.22-win.zip。
官方站点:http://www.mysql.com
注意:MySQL4.1系列版本采用的密码加密方法跟PHP自带客户端不一样,设置起来稍微麻烦,菜鸟一般不要使用。
以下为可选的:
4、数据库在线管理网页程序phpMyAdmin,phpMyAdmin-2.6.1-rc1.zip。
更新及下载:http://sourceforge.net/projects/phpmyadmin/
5、优化PHP代码的Zend Optimizer,ZendOptimizer-2.5.7-Windows-i386.exe
官方站点:http://www.zend.com/
对于PHP4.3.10请使最新版本如:ZendOptimizer-2.5.7,这是PHP官方网站的建议。
6、脚本编写软件Editplus,EditPlus.v2.12.Build.147.rar
二、安装软件。
在硬盘上建立一个放置服务器程序的文件夹,呆会把所有的服务器程序都放在里边,便于管理。目录最好是比较简单点不要中间有空格或特殊字符。我的是 E:\Server
1、 安装Apache。
如果你开着IIS等其他Web服务器的话,请关掉先,否则会端口(80)冲突。
安装过程中要求输入服务器信息。填上你自己的吧,没有的话乱填,比如我的:
Network Domain:danyja.3322.org
Server Name:danyja.3322.org
Administrator's Email Address:danyja@163.com
改变安装目录到E:\Server,它会自动安装到E:\Server\Apache中
2、解压php-4.3.10-Win32.zip到E:\Server\PHP4310。
3、安装MySQL,同样把路径改成E:\Server\MySQL\。
三、配置服务器。
1、复制文件。
复制PHP4310/php4ts.dll到 windows/system(Windows 9x/Me)或winnt/system32(Windows NT/2000)或windows/system32(Windows XP)目录。
复制PHP4310/sapi/php4apache.dll到Apache/modules目录。
复制PHP4310/php.ini-dist到C:\windows目录,并改名为php.ini。
2、修改配置文件。
注意:Windows下路径的\和/没有区别,文件名和文件夹名都不区分大小写。
修改httpd.conf:打开 httpd.conf,
找到DocumentRoot " "和
比如我要把E:\Web作为网站根目录,那么先建立这个目录。
DocumentRoot "E:\Web"
找到DirectoryIndex index.html,把它修改成
DirectoryIndex index.html index.php index.*
在文件最后加上:
LoadModule php4_module modules/php4apache.dll
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
修改完后记得保存。
修改php.ini。php.ini一般不需要修改。要修改请参考PHP手册。
如果你要加载其他库的话,最好指定库文件目录,不然可能会找不到。
比如你要加载GD2库的话,修改extension_dir = "E:\server\php4310\extensions",然后把下面的;extension=php_gd2.dll前面的分号去掉,记得保存。
3、配置MySQL。
运行MySQL/bin/winmysqladmin.exe,设定一个用户名和密码(这个不是数据库的,随便设定一个),点OK后缩小到右下角系统栏里一个红绿灯图标。右键点击该图标,选择Win NT->Install,确定后MySQL就安装为系统服务了,再右键点击该图标,选Win NT->Start,确定后开启了MySQL服务,红绿灯变绿。如果右键点击后选Win NT->Stop的话就关闭MySQL服务,红绿灯变红。如果右键点击后选Win NT->Shutdown this tool的话只是关闭这个管理程序,数据库并没有关闭。
安装好后初始用户root没有密码。我们可以在DOS或命令行提示符下改,但是不太直观。我们可以安装PHPMyAdmin来改(见后面)。
4、重启服务器。
修改了配置文件之后记住重新启动 Apache,使修改的配置生效。
Apache 和MySQL默认都是作为 Windows 的服务安装的,请到服务里面启动、停止、重启。
四、测试服务器。
编写一个php测试文件放到网站根目录,命名为index.php。然后在IE地址栏输入localhost或你的IP回车看看。看到了服务器的信息说明你配置成功了。
phpinfo();
?>
更多设置请参考Apache和PHP的手册,我在这里只是抛砖引玉,希望大家多多研究手册。
五、其他
1、phpMyAdmin的安装。将phpMyAdmin-2.6.0-beta2.zip解压到网站更目录的phpmyadmin目录里。打开config.inc.php文件修改:
修改路径$cfg['PmaAbsoluteUri'] = '';为你的路径,$cfg['PmaAbsoluteUri'] = 'http://localhost/phpmyadmin/';
修改数据库连接设置及认证方式。服务器主机端口本例默认,如果不是请按实际修改$cfg['Servers'][$i]['host']和$cfg['Servers'][$i]['port']等。$cfg['Servers'][$i]['auth_type']='',有两种方式config和http,如果改为config就要在接下来的两行添上数据库用户密码,建议为了安全设为http每次登录的时候都要输入数据库用户密码。
修改默认语言。也可以不修改的,进入后可以选择。$cfg['DefaultLang'] = 'zh';表示默认语言为简体中文。
保存好了后在IE地址栏输入localhost/phpmyadmin/回车看看。输入用户root回车,进去第一件事情就是修改密码。
2、安装Zend Optimizer,安装过程中会自动检测到Apache(如果没有可以按浏览来指到Apache的目录),还会修改备份php.ini文件。
安装完后可以从服务器配置中看到是否成功。
3、EditPlus安装好后需要配置一下。工具里有配置选项。
文件那一项,默认会自动备份,我不喜欢,去掉。
模板处可以加入自定义的PHP模板。
工具里加入服务器配置。按添加后再服务器地址里可以输入本机的IP或localhost,目录请选择到你的网页根目录。然后重启一下Editplus。
好了可以用它编辑PHP文件并浏览了。
关于MySQL 4.1
MySQL 4.1 及其后版本验证协议使用的密码哈希算法与老的客户端不兼容。如果升级到4.1以后使用一个老的客户端连接就会提示信息:
Client does not support authentication protocol requested
by server; consider upgrading MySQL client
还好MySQL还给出了兼容老客户端的解决方法:
首先登录进shell, 执行
mysql -u user -p
输入user的密码登入。(mysql客户端已经是新版了可以登入)
然后执行:
SET PASSWORD FOR 'user'@'host' = OLD_PASSWORD('password');
把user, host(通常都是localhost), password替换成你的,以后再使用PHPMyAdmin也就能正常使用了 :P
但是,在phpmyadmin里修改的密码和创建新用户的密码都是按照新的方式加密的,同样还得经过上面的处理后才能用。
重装系统后恢复服务器
重装系统后服务器不用重装。
1、首先:复制PHP4310/php4ts.dll到 windows/system(Windows 9x/Me)或winnt/system32(Windows NT/2000)或windows/system32(Windows XP)目录。
复制PHP4310/php.ini-dist到C:\windows目录,并改名为php.ini。如果你原来系统上的php.ini修改过,那么你还得再修改。如果有备份就好了。
2、运行cmd 进入Apache目录,运行apache -k install,Apache服务安装成功!
3、Windows下双击运行MySQL/bin/winmysqladmin.exe,设定一个用户名和密码(这个不是数据库的,随便设定一个),点OK后缩小到右下角系统栏里一个红绿灯图标。右键点击该图标,选择Win NT->Install,确定后MySQL就安装为系统服务了,再右键点击该图标,选Win NT->Start,确定后开启了MySQL服务,红绿灯变绿。如果右键点击后选Win NT->Stop的话就关闭MySQL服务,红绿灯变红。如果右键点击后选Win NT->Shutdown this tool的话只是关闭这个管理程序,数据库并没有关闭。安装好后用户密码是以前设置的那些(不要说你忘记了哈)。
4、 最后可以到服务里启动、停止、重启Apache和MySQL。
from:http://bbs.tech.163.com/forum/index.html?groupid=--BL9&url=http://bbs.tech.163.com/bbs/--BL9-IrgeXg-002t.html





第41 - 50,共197