PHP 网站开发环境配置
首先解决大家的几个疑问
问题 1:为什么要用 Apache 而不是 IIS? : ? 回答 1:由于我们是为了运行 PHP 而不是 ASP,所以 Apache 是当之不愧的首选。再者,Win32 环境配置 Apache 方法跟 Linux 下类似,
学习了这个,以后只要会 Linux 基本操作,自然就会了 Linux 的 Apache 配 置。 其次,对于经常重新安装系统的人,每次重新配置 IIS 非常麻烦,还有一点就是 IIS 开机就启动,不适合开 发人员。而 Apache 则将所有的设置保存在一个配置文件中,不会涉及到注册表,所以重装系统之后不用 任何设置就可以使用。堪称绿色。 问题 2:为什么要用 Apache 2.0.59,而不是最新版本 2.2.4? : , ? 回答 2:因为我们用的是 PHP 4 系列,所以只能用 Apache 2.0.x,而不能用 2.2.x。这也就是很多初学者 总是配置失败的原因。(我也被这个问题缠绕了 n 久,最终在一个国外的论坛得以解决)这就引出了下一 个问题。 问题 3:为什么要用 PHP 4.4.7,而不是最新版本 5.2? : , ? 回答 3:因为我们架设好了 PHP 服务器,必然会用到一些 PHP 论坛等程序。以后难免会租用虚拟主机从 而发布自己的 PHP 程序。可是目前国内包括国外的 PHP 虚拟主机还是以 PHP 4.x 居多,而 PHP 本身向 下兼容性不强,我曾经就是用 PHP 5.x 做的网站程序,到了客户(乐凯胶片集团)那里是 PHP 4.x,几乎 完全无法运行。后来我从网上查资料,原来 PHP 5.x 有很多系统函数和 PHP4.x 不同。所以为了方便起见, 我们用 PHP 4.x 的最新版本,也就是
PHP 4.4.7。
问题 4:为什么要用 MySQL 4.1.22,而不是最新版本 5.x? : , ? 回答 4:首先说为什么不用 5.x。因为我已开始也用 5.x,发现他的改变太大了。很难让当前的程序(例如 Discuz!)兼容。例如,在 MySQL 5.x 中,一个表的索引 ID 为自动编号,那么我们在这个表插入数据的时 候必须 insert into Table1 (ID,Name) values (NULL, 'name1');。也就是说必须显式的给自动编号字段赋 NULL 值,否则 SQL 语句出错。而 MySQL 4.x 以及更早期的版本不用,直接 insert into Table (Name) values ('name1');就可以了。这就是为什么 MySQL 5.x 不兼容很多程序的原因。 问题 5:为什么要用 MySQL 4.1.22,而不是 4.0.x? : , ? 回答 5:原因很简单,MySQL 4.1.22 是 MySQL 4.x 的最新版本。而 MySQL 4.0.x 竟然连复合式 SQL 语 句都不支持。例如 select (select aid from Table1) from Table 2;这让我们的开发很不便。至于文字编码 问题,下文中将看到。 问题 6:如果不用 PHP 5.x 和 MySQL 5.x,那么他们有什么用? : ,那么他们有什么用? 回答 6:太有用了。PHP 5.x 对面向对象编程 (OOP) 提供了很好的支持,而 PHP 4.x 竟然没有析构函数
, 而且在类的继承重载上存在一定的 Bug,最重要的是,PHP 4.x 无法定义私有变量,也就无法实现封装。 所以说 PHP 4.x 不是面向对象编程。而 MySQL 5.x 增加的功能就更多了,我对这个了解很少,我知道的 就是支持了存储过程和触发器。要知道在做大规模项目的时候这两个机制是非常有用的。综上所述,PHP 5.x 和 MySQL 5.x 不适合我们初学,适合那些开发新的、庞大的、不涉及到向下兼容的项目
下面正式开始教程(如果还有疑问请提出,我会逐一解答) 下面正式开始教程(如果还有疑问请提出,我会逐一解答)
========================================================== 1、安装之前的准备 、 为了以后重装系统之后不用重新设置,我们不把这些
软件装在 C 盘,而是装在非系统盘。例如 D:\Inetpub\,
所以我们要建立如下目录: D:\Inetpub\PHP4\ D:\Inetpub\Apache2\ D:\Inetpub\MySQL\ D:\Inetpub\phpMyAdmin\ D:\Inetpub\wwwroot\ [用来安装 PHP4] [用来安装 Apache] [用来安装 MySQL] [用来释放 phpMyAdmin] [我们做的网站保存在这里][newpage]
2、安装 MySQL 4.12(完全安装,重