本教程介绍了在 Windows 操作系统上配置 PHP 开发环境的两种方法。第一种方法是安装和配置 AMP (Apache、MySQL、PHP) 包,这种方法最为简便。本教程介绍了如何安装 XAMPP 包。第二种方法是单独安装和配置每个组件。
目录
使用 AMP 包
安装和配置 XAMPP 包
检查 XAMPP 安装
安装和启用 XDebug 调试器
单独安装组件
Apache HTTP 服务器
PHP 引擎
MySQL 数据库服务器
XDebug
设置环境
要学习本教程,您需要具备以下软件和资源。
NetBeans IDE |
PHP 下载包 |
PHP 引擎 |
版本 5。包含在 XAMPP-Windows 中。 |
Web 服务器 |
推荐使用 Apache HTTP Server 2.2。 包含在 XAMPP Windows 中。 |
数据库服务器 |
推荐使用 MySQL Server 5.0。 包含在 XAMPP Windows 中。 |
PHP 调试器(可选) |
XDebug 2.0 或更高版本。 |
通常,开发和调试都是在本地 Web 服务器上执行,而生产环境位于远程 Web 服务器上。使用 NetBeans IDE 在远程 Web 服务器上部署 PHP 应用程序中介绍了如何设置远程 Web 服务器。本教程会引导您设置本地 Web 服务器。PHP 支持可以添加到许多本地 Web 服务器(IIS、Xitami 等)上,但最常用的是 Apache HTTP 服务器。Apache HTTP 服务器包含在本教程中使用的 XAMPP AMP 包中。有关单独安装和配置 Apache HTTP 服务器的信息,请单击此处。
所需的软件
要创建、运行和调试 PHP 项目,需要以下软件:
- 用于 PHP 的 NetBeans IDE。可以从此处进行下载。
- Web 服务器。通常,开发和调试都是在本地 Web 服务器上执行,而生产环境位于远程 Web 服务器上。当前版本允许使用本地服务器。未来版本将支持通过 FTP 访问使用远程服务器。PHP 支持可以添加到许多 Web 服务器(IIS、Xitami 等)上,但最常用的是 Apache HTTP 服务器。有关如何安装和配置 Apache 2.2 的信息,请单击此处。
- PHP 引擎。支持的版本是 PHP5。可以从此处进行下载。
- PHP 调试器。用于 PHP 的 NetBeans IDE 使您能够使用 XDebug,但使用调试器是可选的。推荐版本为 XDebug 2.0 或更高版本,因为它与 PHP5 兼容。
- 数据库服务器。您可以使用多种数据库服务器,而最受欢迎的一种是 MySQL 服务器。可以从此处进行下载。
注:该产品的推荐版本为 MySQL Server 5.0。提供的文档描述如何使用此版本。
安装之后,需要设置环境,使所有软件组件可以彼此之间正常配合工作。
您可以使用其中包含所需软件的包或单独安装每个组件。
使用 AMP 包
要自动指定 PHP 引擎、Apache HTTP 服务器和 MySQL 数据库服务器的所有配置设置,请使用 AMP 包。本教程仅提供 XAMPP-Windows 包的说明。有关 WAMP 包的帮助,请参见NetBeans XDebug Wiki。
安装和配置 XAMPP 包
此部分将介绍如何下载、安装和配置 XAMPP 包。
警告:不要使用 XAMPP 1.7.0。此版本中的 XDebug 出现重大问题。可以使用版本 1.7.1 或更高版本,其中已修复这些问题。
注:从 XAMPP 1.7.2 开始,XAMPP 附带提供 PHP 5.3 而不是 PHP 5.2.x。适用于 PHP 的 NetBeans IDE 版本 6.7.x 不支持新的 PHP 5.3 功能。适用于 PHP 6.8 的 NetBeans IDE 目前提供开发版本,完全支持 PHP 5.3。另请注意,PHP 5.2.x 和 PHP 5.3 之间的 Xdebug 安装不同。
- 下载 XAMPP 安装包。(XAMPP Lite 不包括 XDebug。)
- 下载完成后,运行 .exe 文件。
在 Microsoft Vista 上,“用户访问控制”功能会阻止 PHP 安装程序更新 Apache httpd 配置。在安装 XAMPP 时请禁用 UAC。有关详细信息,请参见 Microsoft 支持。
- 您可以选择作为服务安装 Apache 服务器和 MySQL 数据库服务器。如果将 Apache 服务器和 MySQL 作为服务进行安装,则您将不必通过 XAMPP 控制面板来手动启动它们。请注意,您可以在 XAMPP 控制面板中选择安装或卸载这些服务。
- 如果您使用的是自解压档案文件,请在解压缩该档案文件之后,运行 setup-xampp.bat 文件以配置该包的组件。(XAMPP 安装程序会自动运行此文件。)
- 配置之后,打开 XAMPP 控制面板。(您可以通过运行 XAMPP_HOME/xampp-control.exe 文件或通过自动置于桌面上的 XAMPP 控制面板图标手动打开该控制面板。)在打开 XAMPP 控制面板时,请注意作为服务安装的模块是否已在运行。
警告:在 Windows Vista 上,有时 xampp-control.exe 不会运行。这时您可以运行 xampp-start.exe。
警告:如果通过 MySQL 的“管理”按钮启动 winmysqladmin.exe 文件,则该文件将无法正常运行。出现层叠错误消息时,只能通过手动终止 winmysqladmin 进程来阻止这些消息。您也无法从命令行启动 winmysqladmin.exe。请参见 http://bugs.xampp.org/view.php?id=71。
- "Svc" 复选框指示模块是作为 Windows 服务安装的,并且将在系统启动时自动启动。您可以通过选中或取消选中 "Svc" 复选框来安装或卸载 Windows 服务。卸载 Windows 服务不会卸载模块,但之后您需要手动启动该模块。XAMPP 控制面板包括用于停止和启动模块以及打开这些模块的管理控制台的按钮。
检查 XAMPP 安装
- 运行浏览器,然后输入以下 URL:http://localhost。XAMPP 欢迎页面打开:
- 要确保 Apache 和 MySQL 服务器已作为系统服务安装,请重新启动您的操作系统,再运行浏览器,然后再次输入 http://localhost URL。XAMPP 欢迎页面打开。请注意,XAMPP 欢迎页面在左旁注中包含一个菜单,您可以通过此菜单检查 XAMPP 组件的状态,运行 phpinfo(),以及实现其他有用的功能。phpinfo() 会返回一个屏幕,其中显示关于 XAMPP 组件的配置信息。
安装和启用 XDebug 调试器
您需要配置 PHP 堆栈才能使用 XDebug。如果使用的是 XAMPP 1.7.1(捆绑了 PHP 5.2.6)或 XAMPP 1.7.2(捆绑了 PHP 5.3),该过程会有所不同。
许多用户在其系统上运行 XDebug 时都遇到了一些问题。有关帮助信息,请参见我们的 wiki 和 NetBeans PHP 编辑器用户论坛。
XAMPP 1.7.1 (PHP 5.2) 上的 XDebug
您必须下载 XDebug,将 .dll 文件放在 php 扩展目录中,然后配置 php.ini 以查找并使用该文件。
- 下载与您的 PHP 版本兼容且线程安全的最新 XDebug。下载链接列在 "Releases" 下。将 .dll 文件复制到 XAMP_HOME/php/ext 目录中。(XAMPP_HOME 是指 XAMPP 或 XAMPP Lite 安装目录,如 C:\Program Files\xampp 或 C:\xampplite。)
- 找到 XAMPP 的活动 php.ini 文件并将其打开。默认情况下,此文件位于 XAMPP_HOME/apache/bin 目录中。通过运行 phpinfo() 并搜索 "Loaded Configuration File" 来确认活动的 php.ini 文件。
- 由于 Zend 优化器会阻止 XDebug,因此您需要禁用 Zend 优化器。在活动的 php.ini 文件中找到以下行,然后将其删除或标记为注释(为了安全起见,请搜索与 Zend 相关的所有属性并将其注释掉):
[Zend]
;zend_extension_ts = "C:\Program Files\xampp\php\zendOptimizer\lib\ZendExtensionManager.dll"
;zend_extension_manager.optimizer_ts = "C:\Program Files\xampplite\php\zendOptimizer\lib\Optimizer"
;zend_optimizer.enable_loader = 0
;zend_optimizer.optimization_level=15
;zend_optimizer.license_path =
- 要将 XDebug 附加到 PHP 引擎,请在 php.ini 文件中取消对以下行(恰好位于 [Zend] 部分下面;如果没有,请添加它们)的注释。已另外添加一些注释。
[XDebug]
; Only Zend OR (!) XDebug
zend_extension_ts = "./php/ext/php_xdebug<-version-number>.dll"
; XAMPP and XAMPP Lite 1.7.0 and later come with a bundled xdebug at <XAMPP_HOME>/php/ext/php_xdebug.dll, without a version number.
xdebug.remote_enable=1
xdebug.remote_host=127.0.0.1
xdebug.remote_port=9000
; Port number must match debugger port number in NetBeans IDE Tools > Options > PHP
xdebug.remote_handler=dbgp
xdebug.profiler_enable=1
xdebug.profiler_output_dir="<XAMPP_HOME>\tmp"
将 xdebug.remote_enable 属性设置为 1,而不是 "true" 或任何其他值。
注:请确保您指定的路径与安装过程中所确定的相应文件的位置匹配。
- 保存 php.ini。
- 运行 XAMPP Control Panel Application(XAMPP 控制面板应用程序)并重新启动 Apache 服务器。
有关如何配置 XDebug 的详细信息,请参见 我们的 wiki 和 XDebug 文档。
XAMPP 1.7.2 (PHP 5.3) 上的 XDebug
XAMPP 1.7.2 捆绑了相应的 Xdebug .dll 文件。只需配置 php.ini 即可使用该文件。请注意,所有 Xdebug 设置都具有说明文本。
- 找到并打开 XAMPP_HOME\php\php.ini 以进行编辑。这是 XAMPP 1.7.2 中的唯一 php.ini 文件。
- 查找并取消注释以下行:zend_extension = "XAMPP_HOME\php\ext\php_xdebug.dll"。
- 查找并取消注释以下行:xdebug.remote_host=localhost。将设置值从 localhost 更改为 127.0.0.1。
- 查找并取消注释以下行:xdebug.remote_enable = 0。将 0 更改为 1。
- 查找并取消注释以下行:xdebug.remote_handler = "dbgp"。
- 查找并取消注释以下行:xdebug.remote_port = 9000。
- 保存 php.ini。
- 运行 XAMPP Control Panel Application(XAMPP 控制面板应用程序)并重新启动 Apache 服务器。
有关如何配置 XDebug 的详细信息,请参见我们的 wiki 和 XDebug 文档。
单独安装组件
Apache HTTP 服务器
- 下载 Apache2 HTTP 服务器。
- 运行安装文件 .msi。此时将启动安装向导。按照说明操作。
在 Microsoft Vista 上,不要将 Apache 服务器安装到 Program Files 中的默认位置。Program Files 中的所有文件均具有写保护。
- 安装完成后,重新启动 Apache 服务器。
- 要检查安装是否成功,请运行浏览器,然后输入以下 URL:
http://localhost/
Apache 欢迎测试页面打开:
疑难解答
默认情况下,Apache 服务器监听端口 80。此端口可能已被其他服务所使用,如 Skype。要解决此问题,请更改服务器监听的端口:
- 打开 Apache Web 服务器配置文件 httpd.conf。默认情况下,此文件位于 C:\Program Files\Apache Software Foundation\Apache<version>\conf\ 中
- 找到 Listen 80 行,并更改端口号,如 8080。保存该文件。
- 重新启动 Apache Web 服务器。
- 要检查 Web 服务器是否工作,请运行浏览器并输入 URL,然后明确指定端口号:http://localhost:8080
您还可以停止可能监听端口 80 的进程。在任务管理器中,选择相关文件名称,并单击“结束进程”。
有关安装和配置服务器的详细信息,请查看此处。
PHP 引擎
- 下载适用于您所选 PHP5 版本的 Windows 二进制文件安装程序。
重要信息:如果没有安装程序适用于您要安装的 PHP 版本,则必须手动从 .zip 文件中安装它。请参见 php.net 文档中的手动指令步骤。
- 下载完成后,运行 .msi 安装文件。此时将启动安装向导。
- 在“Apache 配置目录”面板上,指定 httpd.conf 文件所在的目录,默认设置是 C:\Program Files\Apache Software Foundation\Apache<version>\conf\。PHP 处理将自动启用。
- 如果您要使用 MySQL 数据库服务器,请选择“完全”安装选项,或在“扩展”列表中选择 "MySQL" 和 "MySQLi" 项。
- 安装完成后,请重新启动 Apache 服务器。
- 要检查 PHP 引擎是否已成功安装,以及是否在 Apache 配置中启用了 PHP 处理,请执行以下操作:
疑难解答
如果页面未打开:
- 重新启动 Apache 服务器。
- 检查 Apache 服务器配置文件 httpd.conf 是否包含以下几行:
AddType Application/x-httpd-php .php
LoadModule php5_module "c:/php/sapi/php5apache2_2.dll"
- 如果缺少以上几行,请添加它们,并保存 httpd.conf,然后重新启动 Apache。
- 刷新 http://localhost:<port>/test.php 页面。
MySQL 数据库服务器
查找有关安装和配置 MySQL 数据库服务器的详细信息。
XDebug
- 下载 XDebug。
- 将 XDebug 安装到 php/ 文件夹中。您将需要指向 XDebug 的路径来配置环境。
设置环境
- 如果按照默认设置安装,则系统会自动启用 PHP 处理。
- 要将 XDebug 附加到 PHP 引擎,请找到 php.ini 文件,并在其中添加以下几行:
适用于线程安全的 PHP 5.2 引擎:
zend_extension_ts="<path to the php folder>/php_xdebug-<version-number>.dll"
xdebug.remote_enable=1
适用于非线程安全的 PHP 5.2 引擎:
zend_extension_nts="<path to the php folder>/php_xdebug-<version-number>.dll"
xdebug.remote_enable=1
适用于任何 PHP 5.3 引擎:
zend_extension="<path to the php folder>/php_xdebug-<version-number>.dll"
xdebug.remote_enable=1
一些用户还发现需要包括以下行(但有些用户不需要):
xdebug.remote_host=127.0.0.1
xdebug.remote_port=9000
; Port number must match debugger port number in NetBeans IDE Tools > Options > PHP
xdebug.remote_handler=dbgp
有关如何配置 XDebug 的详细信息,请单击此处。
注:请确保您指定的路径与安装过程中所确定的相应文件的名称和位置匹配。
- 要确保先前安装的 PHP 引擎支持使用 MySQL 数据库服务器,请执行以下操作:
- 单击“开始”>“控制面板”。
- 在控制面板上,选择“添加或删除程序”。
- 在“添加或删除程序”面板上,选择“PHP <版本号>”区域并单击“更改”。此时将启动 PHP 设置向导。单击 "Next"(下一步)。
- 在“更改、修复或删除”安装面板上,选择“更改”,然后单击“下一步”。
- 在“Web 服务器设置”面板上,选择 Apache 服务器的版本(在我们的示例中是 Apache 2.2.x 模块)。单击 "Next"(下一步)。
- 在“Apache 配置目录”面板上,指定 Apache 配置文件 httpd.conf 所在的目录。单击 "Next"(下一步)。
- 在“选择要安装的项”面板上,展开“扩展”节点,然后选择 "MySQL" 和 "MySQLi" 项。单击 "Next"(下一步)。
- 在“准备更改 PHP <版本号>”面板上,单击“更改”。
- 在“已完成 PHP <版本号> 设置向导”面板上,单击“完成”。