PHP的安装一向以自由而著称
。然而越是功能强大
,其内部结构就越是复杂
,越是复杂,其耦合程度就越高
。很多人在使用
PHP的第一步-安装,就头痛不已。抱着为大家减轻痛苦的想法,试着翻译了这篇小教程。
使用PHP5.2.x的Windows安装器程序(installer)
PHP5.2.0让我们看到了其改进很大的Windows安装程序。与早期版本不同的是,新版安装程序能够对大多数web
服务器自动安装全功能版本的PHP,这包括Apache1.3,2.0和2.2系列,以及IIS。
下面的指南假设你已经在本地机上安装了一个web
服务器。尽管已在Apache2.2和IIS5.1上做过了测试,但也适用于其它web服务器。在开始测试之前,我彻底地删除了已安装的PHP,这包括所有的Windows环境变量,如PHPRC和在WindowsPATH中对PHP目录的引用。这样才适于一个全新PHP的安装,但如果你打算在一个已有的PHP安装基础上升级的话可能不会成功。
新版本不适用与Windows98,除非你从微软的官网上下载了一个MSIinstaller。
在WindowsVista下安装Apache和PHP时,你必须暂时屏蔽用户访问控制(UserAccessControl,UAC)-参看此处。
1.转到PHP下载页面
http://www.php.net/downloads.php,然后在WindowBinaries部分点选PHP5.2.xInstaller。注意,所下载的程序接近19MB(是zip压缩包的两倍)。从一个镜像站点下载php-5.2.x-win32-installer.msi,并将其保存在硬盘上。
2.关闭所有的Windows程序,然后双击php-5.2.x-win32-installer.msi,执行安装向导。你会看到下面的欢迎画面。点击Next开始安装。
3.第一个对话框显示的是PHP协议。你需要点选接受,然后点击Next。
4.接下来向导会给出PHP安装目录的选项。默认的是C:ProgramFilesPHP。除非你有强烈的理由选择其它目录,否则还是接受默认值,然后点击Next。
5.现在你可以选择与PHP一起工作的web服务器了。正如你从下图看到的那样,可供选择的很多。我选择将PHP作为Apache2.2.xModule安装。
如果你打算使用IIS,那么选择IISCGI。(上面的截图取自PHP5.2.0的安装过程。在PHP5.2.1中,IIS选项的名字有所更改。)尽管作为一个ISAPI模块运行PHP是首选,但是IISISAPImodule选项目前会安装器中不可用。确认你的选择后点击Next。
6.如果你在上一步选择IIS,直接跳过此步到第七步。
如果你选择了Apache,安装向导会提示你指定配置文件的所在目录。如果安装的是Apache2.2.x,它的目录如下图所示是C:ProgramFilesApacheSoftwareFoundationApache2.2conf。浏览到对应目录后,点击OK,然后返回到安装向导,选择Next。
7.下一个对话框让你选择安装哪个PHP插件。PHP提供了大量非核心插件,所以最好选择你需要用到的。点击对话框,展开插件树菜单。作为最小的需要,你应选择GD2,Multi-ByteString,My
SQL和My
SQLi。点击扩展名旁边的向下箭头,按下面截图所示选择"Willbeinstalledonlocalharddrive"(将会安装在本地硬盘上)。红色X被一个硬盘图标所代替,这意味着这个插件被激活了。
如果你正在适用TheEssentialGuidetoDreamweaverCS3或FoundationPHPforDreamweaver8,你还应该选上XSL。对于PHPSolutions,展开PDO,然后选择MySQL(这个是除了主插件列表中的MySQL和MySQLi以外的)。
如果你打算做大量的PHP开发,你或许还需要添加Extras,这会在你的本地硬盘上安装PEAR和PHP文档。如果还在犹豫的话,别担心。你需要对PHP有很强的了解,如果你打算使用PEAR的话,并且在线文档经常更新,所以保留一份本地版如果你很多时候离线工作的话。
选择好后,点击Next。
8.向导准备安装PHP了。如果你选择的是Apache,它会提示是否需要配置Apache。点击Yes。在安装完成后,你应该看到两个警告对话框,说的是Apache配置文件和mime.type文件成功地安装了。点击OK,然后点击Finish以关闭向导。如果你选择的是IIS,则没有对话框,点击Finish就完成了安装。
9.要使所有的改变生效,你需要重启计算机。另外,对于添加PHP目录到WindowsPATH来说,这是必须的。
10.如果你运行<?phpphpinfo();?>,你应会看到php.ini已在C:ProgramFilesPHPphp.ini中了。(在PHP5.2.3以上版本,php.ini的位置被显示在了LoadedConfigurationFile中。
php.ini中重要的差别
新的Windowsinstaller的php.ini是基于php.ini-recommended的,它比php.ini-dist有着更严格的标准-这个版本通常推荐用于开发环境。这个是更受推荐的,因为它强迫你创建更
安全的脚本。然而,你需要注意如下的差别:
•向导关闭了错误信息显示功能,而将其写入到了一个日志文件中。对于开发而言,我建议你象下面这样更改你的php.ini中的设置:
○display_errors=On
○log_errors=Off
•Magicquotes被关闭了。尽管许多脚本依赖于Magicquotes的使用(在单或双引号之前反斜杠的自动插入),但是我不推荐将其重新打开,因为这项功能将会在PHP6中被永远地删除。所以的由Dreamweaver和本书所创建的脚本,不管有无这项功能都正常地工作。
•Shortopentag被关闭了。这意为着你必须使用完整的openingPHPtag(<?php)。因为在实践中推荐这样的做法,你应该不对其做出改动。Dreamweaver和本书中的脚本总是使用完整的标签。
打开sessions和uploads
Windowsinstaller将C:DocumentsandSettings<username>LocalSettingsTempphpupload作为upload_tmp_dir的值;以及C:DocumentsandSettings<username>LocalSettingsTempphpsession作为session.save_path的值。然而,安装程序不会这两个目录。结果是,文件的上传和session在这两个目录被创建之前是不会工作的。(在WindowsVista中,目录是C:Users<username>AppDataLocalTempPHPupload和C:Users<username>AppDataLocalTempPHPsessions。)
要么打开php.ini,将现有目录改名到C:WINDOWSTemp,或创建必要的目录C:DocumentsandSettings<username>LocalSettingsTemp(以及Vista中相应的目录)。如果你选择目录的改名,确定你在php.ini中的改动正确。安装程序没有改动原始的命令,却插入了一些新的东西。原始的命令在行末有一个分号,soareignored。
记住,只要对php.ini做出更改就要重启web服务器。
PHP安装程序向导不会做的事情
尽管新的Windows安装程序大大简化了PHP在Windows上的安装,但是它不会改变Apache上DocumenRoot的默认位置,也不会添加index.php到DirectoryIndex命令中。你仍需手工地对httpd.conf做出改动。对于如何完成这项工作,请参看下列内容:
•TheEssentialGuidetoDreamweaverCS3:pages107-109.
•PHPSolutions:pages30–31,steps3&4.
•FoundationPHPforDreamweaver8:page68,steps4&5.
•BlogDesignSolutions:pages34–35,steps3&4.