在Windows中安装Apache2和PHP4的权威指南

  • Post author:
  • Post category:php



作者

:

周靖 译


来源

:ZDNet




Apache 2




PHP

是创建交互式网站的流行方案,而且成本很低。在

Windows

中安装

Apache 2

是一件轻而易举的事情,但要使

PHP 4



Apache 2

配合无间地运行,就需要一定的技巧。





PHP 4.3

手册的

Windows

安装小节,没有解释如何让

PHP



Apache 2

配合使用,而有关

Apache 2

安装的小节缺失了你需要的大量信息。在网上公布的其他安装指南中,也包含了不少错误,使一些安装人员只好不断试验和犯错。例如,有些人甚至将

PHP



DLL

替换成其他

PHP

版本的

DLL



OK

,为了节省你的宝贵时间,我们准备了这篇最权威的指南文章,帮你扫除一切烦恼。




使用正确版本的

Windows



首先要说一说兼容性:

Apache 2

不能在

Windows 95

上运行;在

Windows 98

上勉强能够运行,但不能作为服务使用。从

4.3

版本开始,

PHP

也不再支持

Windows 95

。所以,你的

Windows

操作系统必须是

Windows NT



2000

或者

XP


Apache 2

:源码还是二进制

?


如果你有

Visual C++ 5.0

或更高的版本,或者安装了

Microsoft Visual Studio

,那么虽然可以根据源码来生成

Apache

,但请绝对不要这样做。在

Visual Studio IDE

中,




Windows



下的生成过程





非常复杂。即使从命令行编译,也绝对不是一件易事。所以,除非你喜欢创建

makefile

,否则最好获得





一份Windows Installer




二进制发行包





,也就是一个

.msi

文件。等你对

Apache

有了足够多的认识,知道自己要进行哪些定制操作时,才可考虑亲手生成(编译)

Apache



如果已经安装好并正在运行老版本的

Apache

,首先要停止它,卸载它,然后才能开始安装新服务器。多个版本的

Apache 2

不能共存。


双击

Apache 2 .msi

文件。同意许可协议后,会出现如图

A

所示的对话框。





A









正确地设置

Network Domain



Server Name

(如果不打算将

Apache

安装到远程计算机,那么设置

localhost

就可以了),在

Administrator’s Email Address

区域输入你的电子邮件地址,保持端口

80/

服务选项单选钮的选中状态。在下一个对话框中如果选择

Typical

安装,可以快速地获得一个能实际工作的服务器环境。




安装提示



建议将默认安装目录从

C:/Program Files/Apache Group

变成

C:/Apache

或者符合

8.3

文件名格式的其他名称。这样一来,以后每次输入

Apache

安装路径时,都不必为其添加引号。







稍候片刻,安装向导会告诉你

Apache 2

安装成功。接下来惟一要做的事情就是进行测试,请打开浏览器并访问

localhost

,这样应该看到默认的

Apache 2

主页。


然后可以删除主

Web

服务器目录中的所有示例文件,它们默认位于

C:/InstallDirectory/Apache/Apache2/htdocs

中。如果有一个现成的主页

Index.html

,请把它拷贝到这里;另外,也可以马上创建一个空白主页。对于未初始化的

HTML

,以下代码就可以了:




<html>

<head>title=default server page</head>

<body>Default server page</body>

</html>






Apache 2



PHP

做好准备




从现在开始,你需要较多地以人工方式进行安装,不能简单地点击和选择几个选项了事。尽快习惯它吧,这才是

Apache

的方式。你需要编辑文件来设置不同的配置选项;如果操作不当,你所做的修改就会妨碍

Apache

的正确加载。如果设置引发错误,那么错误可能被记录到

Apache 2

错误日志中(默认为

C:/InstallDir/Apache2/Logs/Error.log

)。但能够像这样进行记录的毕竟是少数,大多数错误只会记录到

Windows

事件日志中(开始

|

设置

|

控制面板

|

管理工具

|

事件查看器)。



令人遗憾的是,在你对安装设置进行调试时,

Windows

事件日志并不是一个方便的工具。更好的做法是在命令行窗口中测试

Apache

服务器的加载,这样能立即看到错误报告。所以,在完成了我即将讨论的配置修改后,请打开一个命令行窗口,切换到

Apache



binary

目录(

C:/InstallDir/Apache2/bin

),在那里启动

Apache





Apache


配置文件是

C:/Apache/Apache2/Conf/Httpd.conf

,可用任何文本编辑器来编辑。查找

DirectoryIndex

,定位到下面这一行:

DirectoryIndex index.html index.html.var # index.php


为了允许

Apache

处理

PHP

页,要删除注释字符(


#


),变成:

DirectoryIndex index.html index.html.var index.php



还要允许在任何目录中使用

.htaccess

文件,所以请在配置文件中查找

AllowOverride

,把这个设置从

None

改成

All

。保存了所做的改动后,可继续在文本编辑器中打开该文件,因为等会儿安装

PHP

时,要再次编辑这个文件。




安装

PHP



虽然可以下载

PHP

的源码,但和

Apache 2

一样,最好直接使用二进制发行包。

Apache 2

可采取

2

种方式来运行

PHP

程序:通过一个

CGI

接口来运行(外部调用

Php.exe

),或者使用

PHP



DLL

文件在

Apache

的内部运行。后一种方式的速度较快。所以,针对每个版本的

PHP

,都会提供

2



Windows

二进制发行包。较小的是

.msi

包,它会安装

CGI

可执行程序

Php.exe

,但其中拿掉了通过

Apache DLL

来运行

PHP

脚本所需的模块。较大的

.zip

包则包含了所有这些东西,你可以从

snaps.php.net

网站的

Win32

区域





下载





它们。文件下载完毕后,把它解压到

C:/Php

(保留文件夹名称)。除非你有绝对的把握,请同时下载




PHP



手册





,它有多种语言的版本可供选择。




配置

Apache 2

来运行

PHP4



现在来到了最有趣的部分:将

Apache



PHP

完美地配合起来。首先,请将

C:/Php/Dlls

目录中的所有

DLL

文件拷贝到

Windows



System

目录(

%windir%/System

)。接着,在

Apache

的配置文件(

Httpd.conf

)中查找包含了大量

AddType

命令那个小节,自己添加下面这一行:

AddType application/x-httpd-php .php




C:/Php/Php.ini-recommended

拷贝到

Windows

目录(

%windir%

),把它重命名为

Php.ini

,并用文本编辑器打开它。编辑其中对

doc_root



extension_dir



session.save_path

进行设置的

3

行,使其和下面展示的一致,注意要把

InstallDir

替换成你的

Apache 2

的安装目录的名称。

doc_root = c:/apache/apache2/htdocs

extension_dir = c:/php/extensions

session.save_path = c:/temp




session.save_path

中使用正斜杠和反斜杠都是允许的。

PHP

手册声称这些路径参数需要在最后添加一个反斜杠,但这个说法是不正确的。在

PHP 4.3

中不需要这样做。另外,如果

C:/Temp

不存在,请自己创建它。


下一步是允许

Apache



PHP

程序作为模块来运行,这要求你采取

2

个步骤。首先,将

C:/Php/Php4ts.dll

拷贝到

Windows

的系统文件夹(

%windir%/System

)。在

Httpd.conf

中找到

LoadModule

小节,自己添加下面这一行:

LoadModule php4_module “c:/php/php4apache2.dll”


如果你出于某种原因而需要在

CGI

模式中运行

PHP

程序(使用

Php.exe

),请将上面这一行变成注释,并在

Httpd.conf

中添加下面这些行:

ScriptAlias /php/ “c:/php/”

Action application/x-httpd-php “/php/php.exe”



一切都搞定了吗

?



保存所做的更改后,你需要亲自去证明两点,才能确保

Apache 2/PHP 4

成为一对完美的搭档:

Apache

能正常加载吗,它能正确处理

PHP

页吗?


要知道

Apache

是否能够正常加载,在你已经打开的命令行窗口中输入以下命令:

apache –k start


另外,如果

Apache

正在运行,可用以下命令重新启动它:

apache –k restart


从命令行启动

Apache

的好处在于,如果出现一个错误,

Apache

会立即报告它。你可能遇到的最常见的问题在于,

Apache

可能由于某种原因而无法加载

Php4apache2.dll

。如果

Apache

报告了这个错误,请按前面所述的步骤重新操作一遍,确保一切都没有错误。


要知道

Apache

是否能正确地处理

PHP

页,请用你的文本编辑器创建一个简单的

PHP

页,命名为

Phptest.php

,其中只包含下面这一行:

<? phpinfo(); ?>


将文件保存到主

Web

服务器目录(

C:/InstallDirectory/Apache/Apache2/Htdocs

),用浏览器访问

http://localhost/phptest.php

。如果一切正常,应该看到一个含有

PHP

徽标的网页,其中包含大量设置和其他信息。要知道

PHP

当前是通过

CGI

来运行,还是在

Apache

内部运行,可以检查一下环境变量


orig_script_name


。如果

PHP

通过

CGI

来运行,这个变量的值就是

/Php/Php.exe

。如果

Apache



PHP

脚本作为模块来运行,该变量的值应该是

/Phptest.php



虽然在

Windows

上安装

Apache 2



PHP

并不是一件容易的事情,但也完全没必要采取摸着石头过河的做法。通过本文的说明,你应该可以快速搭建起这个史上最好的、成本最低的

Web

开发环境。




版权声明:本文为aqandes原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。