W2K+Apache+MySql+PHP3+PHP4+PERL使用小结

发表于:2007-05-25来源:作者:点击数: 标签:
这里一定有许多和我一样喜欢尝试新鲜事物的朋友,尤其是当听说某软件有了新的版本时一定也会迫不 及待的去下载一份回来用用再说。这里我想和大家探讨一下以下流行软件的应用,意在抛砖引玉。 OS : Microsoft Windows 2000 Professional简体中文版 WEB SERVER
这里一定有许多和我一样喜欢尝试新鲜事物的朋友,尤其是当听说某软件有了新的版本时一定也会迫不
及待的去下载一份回来用用再说。这里我想和大家探讨一下以下流行软件的应用,意在抛砖引玉。

  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
#这一项指明了在每个目录中的默认文档及其顺序

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


【☆☆☆ MySql概要说明 ☆☆☆】

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

C:\>gt;net stop mysql
MySql 服务正在停止.
系统出错。

系统发生 1067 错误。

进程意外终止。

MySql 服务已成功停止。

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

C:\>gt;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.ini 。上面已经提到要修
改的两个部分:

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 this off if you don't want
             ; to clutter your scripts' global scope with user data. This makes
             ; most sense when coupled with track_vars - in which case you can
             ; access all of the GPC variables through 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的Active Perl5.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 及其相关环境中的心得写出来与
网友们共享,共同进步。如果发现文中有错误,敬请指正,不胜感激。

原文转自:http://www.ltesting.net