首页 » PHP和MySQL Web开发(原书第4版) » PHP和MySQL Web开发(原书第4版)全文在线阅读

《PHP和MySQL Web开发(原书第4版)》16.5 Web服务器和PHP的安全性

关灯直达底部

除了需要担心代码的安全性,Web服务器和PHP的安装和配置同样是一个大的安全问题。

在计算机和服务器上安装的大多数软件都有配置文件和默认的特性,这些都是用来“炫耀”软件功能和可用性。假设需要禁用软件的某些不需要的或者安全性较低功能选项。通常,人们不会考虑这么做,或者花费时间来正确处理它。

作为考虑整体安全性的部分方法,我们需要确保Web服务器和PHP是被真正正确的配置。尽管无法对如何提高PHP中每个Web服务器扩展的安全性给出全面的介绍,但至少可以给出一些基本要点以及获得更多建议和意见的正确方向。

16.5.1 保持软件的更新

提高系统安全性的一个最简单办法就是确保你所使用的软件是最新和最安全的版本。对于PHP,Apache HTTP服务器以及Microsoft的IIS(Internet Information Server),可以通过定期访问这些网站,查看是否有安全建议,新的发布版本,以及与安全相关的缺陷修复的新特性。

有时候,安装和配置这些软件程序是非常耗时的,需要很多的步骤。尤其是通过源代码方式安装UNIX版本,总需要先安装许多其他软件,然后设置一些必需的命令行参数才能正确启用某些模块和扩展。

创建一些安装脚本以便于以后安装该软件的新版本是非常重要的。这样可以确保不会遗忘任何重要的可能带来问题的步骤。通常,步骤的数量与我们大脑记住的数量不尽相同,而且脑海中每个步骤的具体细节在每次安装时也会有所差异。

第一次的时候,不应该在产品服务器上直接安装。应该有一个测试或实验用的服务器,你可以在上面安装软件和Web应用,确保所有模块能够正常工作。对于一个语言引擎(例如PHP)来说尤其如此,在不同版本之间某些默认设置可能发生变化,在确保软件的新版本不会影响你的应用之前,你应该运行一系列测试组合以及试验性运行。

请注意,你并不需要花费几千美元重新购置一台新机器来练习软件的安装和配置。许多程序允许你在你的操作系统中再虚拟一个操作系统,例如VMWare公司的VMWare或者Microsoft公司的VirtualPC软件,这些软件都允许你在目前运行的操作系统中虚拟新的操作系统。

图 16-2 升级服务器软件的过程

确认新的软件版本能够与你的Web应用正常工作后,可以将其部署在产品服务器。这里,必须绝对确保这个过程是自动化的或者文档化的,这样就可以按照相同的步骤复制正确的服务器环境。在产品环境的服务器上,还需要执行一些最后的测试以确保所有模块能够正常工作。