欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

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

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

  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 编辑,例如运行
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 及其相关环境中的心得写出来与
网友们共享,共同进步。如果发现文中有错误,敬请指正,不胜感激。