Win2000+Apache+MySql+PHP4+PERL安装使用小结


Posted in PHP onOctober 09, 2006

Windows 2000+Apache+MySql+PHP3+PHP4+PERL安装使用小结
www。1000script.com 2002-9-3 1000script专业脚本
Windows 2000+Apache+MySql+PHP3+PHP4+PERL安装使用小结(一)

这里一定有许多和我一样喜欢尝试新鲜事物的朋友,尤其是当听说
某某软件有了新的版本时一定也会迫不及待的去下载一份回来用用再说。
这里我想和大家探讨一下以下流行软件的应用,意在抛砖引玉。

OS : Microsoft Windows 2000 Professional简体中文版
WEB SERVER: Apache 1.3.12 for WIN32
MYSQL : MySQL Shareware 3.22.34 for WIN32
PHP3 : PHP 3.0.15 for WIN32
PHP4 : PHP 4.0.0 for WIN32
ZEND : Zend Optimizer beta4 for PHP 4.0.0 for WIN32

【★★★ Apache快速安装 ★★★】

1. 运行 apache_1_3_12_win32.exe ,按照提示安装,安装目录不妨为:

c:\apache
2. 修改 c:\apache\httpd.conf,去掉ServerName前的“#”号,后面

跟本机的IP地址
3. 运行 c:\apache\apache -i 将Apache安装成为Windows 2000的一个服务
4. 运行 net start apache 启动Apache
5. 将 c:\apache\htdocs\index.html.en 改名为 index.html ,然后

在浏览器地址栏中输入: http://localhost

【★★★ MySql快速安装 ★★★】

1. 将 mysql-shareware-3.22.34-win.zip 解压缩到一个临时目录下,

然后运行 setup.exe 开始安装,一切用默认值安装即可
2. 运行 c:\mysql\bin\mysqld-shareware --install

将mysql安装成Windows 2000的一个服务
3. 运行 net start mysql

启动mysql服务即可

【★★★ PHP3快速安装 ★★★】

1. 将 php-3.0.15-win32.zip 解压缩到一个目录下,例如

c:\apache\php3
2. 将 c:\apache\php3\php3.ini-dist 拷贝到 c:\winnt 目录下,

并改名为 php3.ini
3. 修改 c:\apache\conf\srm.conf,加入如下几行:
ScriptAlias /php3/ "c:/apache/php3/"
Addtype application/x-httpd-php3 .php3
Action application/x-httpd-php3 "/php3/php.exe"
4. 重新启动Apache (net stop apache, net start apache)

PHP3就可以运行了,创建一个文件 c:\apache\htdocs\info.php3 ,

内容只有一行:


然后在浏览器地址栏中输入:http://localhost/info.php3
5. 为了加入对MySql的支持,需要编辑 c:\winnt\php3.ini ,

找到extension_dir,将该行改为:
extension_dir = "c:\apache\php3\"

再找到
;extension=php3_mysql.dll

去掉前面的分号即可

【★★★ PHP4快速安装 ★★★】

1. 将 php-4.0.0-Win32.zip 解压缩到一个目录下,例如

c:\apache\php
2. 将 c:\apache\php\php.ini-dist 拷贝到 c:\winnt 目录下,

并改名为 php.ini
3. 将 c:\apache\php\php4ts.dll 拷贝到 c:\winnt\system32 目录下
4. 修改 c:\apache\conf\srm.conf ,加入如下几行:
ScriptAlias /php/ "c:/apache/php/"
Addtype application/x-httpd-php .php
Action application/x-httpd-php "/php/php.exe"
5. 重新启动Apache (net stop apache, net start apache)

PHP4就可以运行了,创建一个文件 c:\apache\htdocs\info.php ,

内容只有一行:


然后在浏览器地址栏中输入:http://localhost/info.php

PHP4内置对MySql的支持,不需要额外设置

【★★★ Zend Optimizer for PHP4快速安装 ★★★】

1. 将 ZendOptimizer-Beta4-WindowsNT.zip 解压缩到一个目录下,

例如 c:\apache\zend
2. 修改 c:\winnt\php.ini ,在任何地方加入如下两行:
zend_optimizer.optimization_level=7
zend_extension_ts="c:\apache\zend\ZendOptimizer.dll"
3. 在浏览器中刷新info.php,可以看到多了这么一行:

with Zend Optimizer v0.98, Copyright (c) 1998-2000, by Zend Techno
logies

【★★★ Active Perl快速安装 ★★★】

1. 鼠标双击 ActivePerl-5.6.0.613.msi 运行之,这是一个Windows

Installer Packge格式的安装包,在Windows 2000下可以直接

运行,按照提示安装,默认的安装路径是 c:\perl ,不妨改成

c:\usr
2. 修改 c:\apache\srm.conf ,加入如下一行:
AddHandler cgi-script .pl
3. 在PERL程序的第一行加上:
#!/usr/bin/perl
4. 为了让Apache也能够识别*.cgi程序,在 srm.conf 中加入:
AddHandler cgi-script .cgi

这样一来本地的PERL CGI程序就可以和UNIX主机上的完全保持一致了

为了让Apache能够处理Server Side Include,在 srm.conf 中加入:
AddType text/html .shtml
AddHandler server-parsed .shtml

这样CGI程序就可以以SSI的方式运行了
5. 为了让以上修改生效,需要重新启动Apache (net stop apache, net start
apache)

完全按照以上步骤进行,就会在不出错的情况下拥有了
Apache+MySql+PHP3+PHP4+PERL的运行环境了!事实上,
以上方法在Windos NT4.0+SP3+中一样可行。

【☆☆☆ Apache概要说明 ☆☆☆】

Apache的默认安装目录是c:\program files\apache group\apache,
不过为了方便起见,不妨将它安装到c:\apache目录下。配置文件是
c:\apache\conf\httpd.conf,通常至少需要修改的是ServerName这
一项,把注释符号“#”去掉,最简单是后面跟IP地址,对于有WINS
的局域网用户可以用机器名,对于有DNS的网络用户可以用域名。在
Windows 2000下没有设置ServerName这一项会造成Apache不能启动。
还有一个影响是当用如下方式使用Alias时:
Alias /userdir "c:/userdir/"
假如这样调用:
http://localhost/userdir/
不会产生任何问题,可是如果这样调用:
http://localhost/userdir
那么localhost会被替换成ServerName所指定的值,如果这个值不能
被正确解析,就无法访问。
用户的配置项目添加在httpd.conf或者srm.conf中都可以,一说是将
所有的配置项目都放在httpd.conf中,这样只需要修改维护这一个
配置文件,比较方便,而且避免了冲突(这是srm.conf文件中说的!)。
可是httpd.conf确实太大了,要在里面搜索特定的项目就不很容易。
还有一说是将所有的用户自己添加修改的配置项目都放在srm.conf中,
这个文件很小,便于察看修改,本人倾向于后者。
在httpd.conf中,Apache的其它常用的可能需要修改的设置有:
ServerAdmin your@email.address #管理员的e-mail地址

DocumentRoot "c:/apache/htdocs" #默认的根路径
注意路径全都是用斜线而不是反斜线来分隔

DirectoryIndex index.html index.php index.php3 index.htm index.shtml
这一项指明了在每个目录中的默认文档及其顺序

AccessFileName .htaccess #目录访问的配置文件名
用资源管理器会发现无法将一个文件改名成“.htaccess”,不过
在命令行方式下可以,用notepad也可以另存为这个文件名。

【☆☆☆ MySql概要说明 ☆☆☆】
MySql的默认安装目录是c:\mysql,安装结束后没有任何提示信息说安装结束,请点Finish按钮之类的话,直接就退出了。如果需要安装到其他目录,建议先安装到c:\mysql,然后再整个目录move到自己希望的地方,例如移动到d:\mysql 之后,需要编辑 d:\mysql\my-example.cnf (*.cnf的文件在Windows 2000中会被注册成为 SpeedDial文件,在资源管理器中无法操作,要用命令行来启动notepad编辑,例如运行notepadd:\mysql\my-example.cnf ,但是这个文件是UNIX系统下的文本文件格式,在notepad中不能正确换行,可以用write打开编辑,
或者用write打开后保存一次,再用notepad就可以编辑了。)找到basedir一行,去掉前面的“#”号注释,将后面的路径改为移动后的目录(目录分隔符要用斜线而不是反斜线),然后另存为:c:\my.cnf
用服务方式启动的MySql如果用 net stop mysql 来停止,会得到一条 出错消息,例如:

C:\>net stop mysql

MySql 服务正在停止.

系统出错。

系统发生 1067 错误。

进程意外终止。

MySql 服务已成功停止。
这没有关系,MySql确实已经停止了。但是假如不希望看到任何出错消息
的话,可以用以下的命令来停止:

C:\>mysql\bin\mysqladmin -u root shutdown
如果没有任何提示信息,说明MySql已经成功停止了。
需要说明的是MySql虽然号称安装简单,易于使用,但是这毕竟是基于SQL的数据库管理系统,所以如果不是对SQL十分精通的话恐怕也不能拿它来做什么。网上有许多管理MySql的工具,例如基于PHP3的有phpMyAdmin,MAP,基于Windows的有MySqlWinAdmin,myAdmin等。由于PHP3与PHP4的MySql功能颇多不兼容之处,所以我建议在Apache中同时安装PHP3与PHP4。这两个小程序可以在这里下载:
http://www.nease.net/~yzwang/php/
都只有几十K,而且phpMyAdmin中还包含有简体中文的提示,将 phpMyAdmin_2.0.5.zip 带目录名解压缩到 c:\apache\htdocs目录下,或者其他设定了Alias的目录下,然后编辑文件:c:\apache\htdocs\phpMyadmin\config.inc.php3 在里面找到:
require("english.inc.php3");
一行,将它替换成:require("chinese_gb.inc.php3");
然后保存。在启动它之前还有一件必须要做的事就是编辑 c:\winnt\php3.ini ,
在里面找到 include_path 一行,将它修改为:

include_path = "c:\apache\htdocs\phpmyadmin"
保存后在浏览器地址栏中输入:

http://localhost/phpmyadmin/index.php3
看到没有?它说——〉“欢迎使用 phpMyAdmin 2.0.5” !

【☆☆☆ PHP3概要说明 ☆☆☆】

PHP3似乎没有什么其它需要特殊设定的东西,唯一需要修改的文件就是 php3.in

i 。
上面已经提到要修改的两个部分:

include_path = "c:\apache\htdocs\phpmyadmin;c:\apache\htdocs"

凡是在PHP3中使用了 include 或者 require ,所要包含的文件必须在
include_path 所设定的路径之一,好在修改了php3.ini后会立即生效,
不需要重新启动apache。

extension_dir = "c:\program files\apache\php3\"
这一项也是必需的,否则无法加载扩展模块。
php3.ini中的内容是区分大小写的!不过Windows的路径名大小写没有关系。

【☆☆☆ PHP4概要说明 ☆☆☆】

PHP4与PHP3颇多不同之处,php.ini的大小就比php3.ini大了几乎一倍。
所要修改的项目与php3.ini中的两项一样,include_path 与 extension_dir 。

不过由于内置了MySql的支持,如果只用MySql的话,那么连 extension_dir
也不用修改,保持默认值即可。PHP4提供了两个php.ini的版本可用选择:
php.ini-dist
php.ini-optimized
如果使用 php.ini-dist 的话,那么在使用上没什么问题。可是也许有
好事之徒如我,用了 php.ini-optimized ,那么会遇到重大问题。
大家知道,PHP对于表单的处理极为方便,对于使用了 post 方法的表单,
PHP会自动根据表单的 name 生成同名的变量,几乎所有的PHP程序都是
这样使用自动生成的表单变量的,然而如果将 php.ini-optimized 拷贝
到 c:\winnt 目录下并改名为 php.ini 的话,将没有自动表单变量生成!
仔细看看 php.ini-optimized ,有这么一段:

register_globals = Off

; Whether or not to register the EGP

CS variables as global

 ; variables. You may want to turn t

his off if you don't want

 ; to clutter your scripts' global sc

ope with user data. This makes

 ; most sense when coupled with track

_vars - in which case you can

 ; access all of the GPC variables th

rough the $HTTP_*_VARS[],

 ; variables.
为了能够正确运行其他人写的PHP范例程序,建议还是改成:

register_globals = On

其实我使用PHP的经验还不是很多,但是仍然注意到以下几个问题:
1. 在需要包含另外一个文件时可以用 include ,也可以用 require 。

但是要求在 php.ini 中有路径设定。假如包含文件的目的仅仅是为了

在浏览器中显示输出的话,可以用

readfile("filename");

而且参数还可以是 http 或者 ftp 的 URL 。
2. 要获取本文件的文件名,许多人用 $PHP_SELF ,可是我觉得用

getenv("PATH_INFO");

更好。使用的场景例如:

">
3. 要读入整个文件,简单地使用:

$contents=file("filename");

就可以了,$contents 会成为一个 array 变量,文件的每一行会成为

$contents 中的每一项。阵列下标从 0 到 count($contents) 。
【☆☆☆ Zend Optimizer for PHP4概要说明 ☆☆☆】
该软件也可以从以下地址下载,只有41K:
http://www.nease.net/~yzwang/php/
需要注意的就是这个版本是
Zend Optimizer Beta4 for PHP4.0.0 for WindowsNT,版本号是0.98。
只能用在上述的 PHP4.0.0 for WIN32 这个版本上。
【☆☆☆ Active Perl概要说明 ☆☆☆】
Active State的ActivePerl 5.6是目前最流行的最新版本的PERL解释器,不明白为什么要8174K这么大? 几乎是Apache和MySql加起来的大小。不过这是完全版本的PERL,包含有PERL5的各个模块。之所以建议安装到c:\usr 目录下,是由于这样一来PERL的CGI程序就可以用和在UNIX下一样的SHABANG行了:
#!/usr/bin/perl
当然,按照Windows格式用也可以:
#!c:\usr\bin\perl.exe
这样在自己的机器上调试好的PERL程序不用修改就可以上传到UNIX主机上去使用,方便很多。关于PERL的编程问题不在本文讨论的范围之内。
本文旨在抛砖引玉,希望和各地的朋友交流。也希望大家把在使用PHP及其相关环境中的心得写出来与网友们共享,共同进步。

原作者:1000script
来 源:1000script.com

PHP 相关文章推荐
php你的验证码安全码?
Jan 02 PHP
PHP GD 图像处理组件的常用函数总结
Apr 28 PHP
PHP XML数据解析代码
May 26 PHP
PHP FATAL ERROR: CALL TO UNDEFINED FUNCTION BCMUL()解决办法
May 04 PHP
ThinkPHP使用心得分享-分页类Page的用法
May 15 PHP
FastCGI 进程意外退出造成500错误
Jul 26 PHP
利用php-cli和任务计划实现订单同步功能的方法
May 03 PHP
PHP实现负载均衡session共享redis缓存操作示例
Aug 22 PHP
PHP实现微信申请退款功能
Oct 01 PHP
PHP mkdir创建文件夹实现方法解析
Nov 13 PHP
PHP变量的作用范围实例讲解
Dec 22 PHP
利用PHP内置SERVER开启web服务(本地开发使用)
Mar 09 PHP
用PHP将数据导入到Foxmail
Oct 09 #PHP
PHP 中的一些经验积累
Oct 09 #PHP
详细介绍PHP应用提速面面观
Oct 09 #PHP
基于PHP与XML的PDF文档生成技术
Oct 09 #PHP
利用js调用后台php进行数据处理原码
Oct 09 #PHP
PHP初学者头疼问题总结
Oct 09 #PHP
php代码优化及php相关问题总结
Oct 09 #PHP
You might like
PHP中的事务使用实例
2015/05/26 PHP
PHP实现转盘抽奖算法分享
2020/04/15 PHP
TP5框架简单登录功能实现方法示例
2019/10/31 PHP
另类调用flash无须激活的方法
2006/12/27 Javascript
JavaScript在IE和Firefox浏览器下的7个差异兼容写法小结
2010/06/18 Javascript
jQuery 中使用JSON的实现代码
2011/12/01 Javascript
IE8下Jquery获取select选中的值post到后台报错问题
2014/07/02 Javascript
JS实现密码框根据焦点的获取与失去控制文字的消失与显示效果
2015/11/26 Javascript
AngularJS Bootstrap详细介绍及实例代码
2016/07/28 Javascript
Vue的百度地图插件尝试使用
2017/09/06 Javascript
vue2+el-menu实现路由跳转及当前项的设置方法实例
2017/11/07 Javascript
vue中keep-alive的用法及问题描述
2018/05/15 Javascript
详解angular如何调用HTML字符串的方法
2018/06/30 Javascript
JavaScript中将值转换为字符串的五种方法总结
2019/06/06 Javascript
layer设置maxWidth及maxHeight解决方案
2019/07/26 Javascript
python使用wmi模块获取windows下的系统信息 监控系统
2015/10/27 Python
python利用OpenCV2实现人脸检测
2020/04/16 Python
python基础学习之如何对元组各个元素进行命名详解
2018/07/12 Python
解决pip install xxx报错SyntaxError: invalid syntax的问题
2018/11/30 Python
使用PyQt4 设置TextEdit背景的方法
2019/06/14 Python
Python中BeautifuSoup库的用法使用详解
2019/11/15 Python
pygame库实现移动底座弹球小游戏
2020/04/14 Python
python cv2在验证码识别中应用实例解析
2019/12/25 Python
python中如何进行连乘计算
2020/05/28 Python
佳能德国网上商店:Canon德国
2017/03/18 全球购物
Furla官网:意大利著名的皮革品牌
2019/08/06 全球购物
德国滑雪和户外用品网上商店:XSPO
2019/10/30 全球购物
如果NULL和0作为空指针常数是等价的,那我到底该用哪一个
2014/09/16 面试题
2014年大学生四年规划书范文
2014/04/03 职场文书
反四风个人对照检查材料思想汇报
2014/09/25 职场文书
考试作弊检讨书1000字(5篇)
2014/10/19 职场文书
三峡人家导游词
2015/01/31 职场文书
有关信念的名言语录集锦
2019/12/06 职场文书
MySQL去除重叠时间求时间差和的实现
2021/08/23 MySQL
Python实现老照片修复之上色小技巧
2021/10/16 Python
Redis中有序集合的内部实现方式的详细介绍
2022/03/16 Redis