| // |
| // Licensed to the Apache Software Foundation (ASF) under one |
| // or more contributor license agreements. See the NOTICE file |
| // distributed with this work for additional information |
| // regarding copyright ownership. The ASF licenses this file |
| // to you under the Apache License, Version 2.0 (the |
| // "License"); you may not use this file except in compliance |
| // with the License. You may obtain a copy of the License at |
| // |
| // http://www.apache.org/licenses/LICENSE-2.0 |
| // |
| // Unless required by applicable law or agreed to in writing, |
| // software distributed under the License is distributed on an |
| // "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| // KIND, either express or implied. See the License for the |
| // specific language governing permissions and limitations |
| // under the License. |
| // |
| |
| = 在 MAC OS X 中配置 PHP、Apache、MySQL 和 Xdebug for PHP 开发 |
| :jbake-type: tutorial |
| :jbake-tags: tutorials |
| :jbake-status: published |
| :icons: font |
| :syntax: true |
| :source-highlighter: pygments |
| :toc: left |
| :toc-title: |
| :description: 在 MAC OS X 中配置 PHP、Apache、MySQL 和 Xdebug for PHP 开发 - Apache NetBeans |
| :keywords: Apache NetBeans, Tutorials, 在 MAC OS X 中配置 PHP、Apache、MySQL 和 Xdebug for PHP 开发 |
| |
| 本教程向您演示如何在 link:http://www.mamp.info/en/index.php[+MAMP+](*M*acintosh、*A*pache、*M*ySQL、*P*HP)包上设置 PHP,该包中含有 Apache Web 服务器、MySQL 数据库服务器和 PHP 引擎。MAMP 用作 Mac 的 PHP 开发环境,可与 NetBeans IDE 很好地配合使用。 |
| |
| link:http://www.Xdebug.org/[+Xdebug+] 是 PHP 的扩展,可帮助提供对 PHP 脚本调试有用的信息。NetBeans 调试器在 Xdebug 扩展之上运行,在您的开发环境中提供了有效的调试工具。 |
| |
| |
| image::images/netbeans-stamp-80-74-73.png[title="此页上的内容适用于 NetBeans IDE 7.2、7.3、7.4 和 8.0"] |
| |
| |
| *要学完本教程,您需要具备以下软件和资源。* |
| |
| |=== |
| |软件或资源 |要求的版本 |
| |
| |link:https://netbeans.org/downloads/index.html[+NetBeans IDE+] |PHP 下载包 |
| |
| |link:http://www.oracle.com/technetwork/java/javase/downloads/index.html[+Java 开发工具包 (JDK)+] |7 或 8 |
| |
| |link:http://www.mamp.info/en/download.html[+MAMP+] |1.7.x |
| |
| |link:http://www.Xdebug.org/download.php[+Xdebug+](可选) |2.x |
| |=== |
| |
| NOTE: MAMP 包中包含 Apache Web 服务器、PHP 引擎和 MySQL 数据库。Mac OS X 10.5 及更高版本包含支持 PHP 的 MySQL 数据库和 Apache 服务器。尽管确定可以使用 IDE 配置内置的数据库和服务器,但是 MAMP 的集功能于一身的包提供了一种简便轻松的可配置解决方案。 |
| |
| |
| == 安装和配置 MAMP |
| |
| 1. 下载最新版本的 link:http://www.mamp.info/en/download.html[+MAMP+]。 |
| 2. 提取下载的文件并运行 `.dmg` 文件。当安装程序显示时,将 MAMP 拖到 `/Applications` 文件夹中。 |
| |
| image::images/mamp-install.png[title="显示 MAMP 和 MAMP-Pro 选项的 MAMP 安装程序面板"] |
| |
| |
| |
| . 导航到 `/Applications/MAMP` 并双击 `MAMP.app`。此时将打开 MAMP 控制面板。 |
| |
| 您还可以按照 `MAMP/README.rtf` 中所述安装 MAMP 控制板窗口部件,这使您能够启动和停止服务器。 |
| |
| image::images/mamp-control-panel.png[] |
| |
| |
| |
| . 单击 "Preferences"(首选项)打开 "Preferences"(首选项)面板,然后选择 "Ports"(端口)标签。 |
| |
| |
| . 单击 "Set to Default Apache and MySQL ports"(设置为默认的 Apache 和 MySQL 端口)。Apache 端口将重置为 80,MySQL 端口将重置为 3306。 |
| |
| image::images/mamp-control-panel-preferences-ports.png[title="在端口已更改为默认值之后带有 "Ports"(端口)标签的 MAMP 控制面板"] |
| |
| |
| == 注册 MAMP 的 MySQL 数据库 |
| |
| 默认情况下,MAMP 的 MySQL 数据库位于 `/Applications/MAMP/db/MySQL`。默认的用户名和口令均为 `root`,您可以通过查看 MAMP 欢迎页中的详细信息进行验证,在运行 MAMP 时此欢迎页会在浏览器中打开。 |
| |
| IDE 从 "Services"(服务)窗口(⌘-5 组合键)中与数据库进行交互。可通过执行以下操作来注册 MAMP 的 MySQL 数据库: |
| |
| 1. 右键单击 "Databases"(数据库)> "MySQL Server"(MySQL 服务器)节点并选择 "Properties"(属性)。此时将显示 "MySQL Server Properties"(MySQL 服务器属性)对话框。可以从此对话框中配置所有 MySQL 设置。 |
| 2. 输入数据库服务器的主机名和端口号及其用户名和口令。当运行服务器和数据库时,所有这些信息都会显示在 MAMP 欢迎页上。在本地运行 MAMP 的默认设置是: |
| |
| * *Server Host Name(服务器主机名):*`localhost` |
| * *Server Port Number(服务器端口号):*`3306` |
| * *Administrator User Name(管理员用户名):*`root` |
| * *Administrator Password(管理员口令):*`root` |
| |
| image::images/mysql-basic-properties.png[title="包含 MAMP 默认连接设置的 "MySQL Basic Properties"(MySQL 基本属性)对话框"] |
| |
| |
| |
| . 选择 "Admin Properties"(管理属性)标签以显示可用于从 IDE 中启动和停止数据库服务器的设置。MAMP 在 `bin` 文件夹中维护 Shell 脚本。可以在此文件夹中查找用于启动和停止服务器的脚本。您可以选择管理工具的路径;可以链接到 `MAMP.app`,这样您就可以使用 IDE 打开 MAMP 的控制面板。为此,请输入 `/Applications/MAMP/MAMP.app`。但是,替代选项将使用 link:http://dev.mysql.com/downloads/workbench/[+MySQL Workbench+],它提供用于执行管理操作(即,配置和监视 MySQL 服务器,管理用户和连接,执行备份等)的直观 GUI 界面。要使用 MySQL Workbench,请先下载并安装它,然后在对话框中输入以下设置: |
| |
| * *管理工具的路径/URL:*`/Applications/MySQL Tools/MySQLWorkbench.app` _(MySQL Workbench 的默认安装)_ |
| * *启动命令的路径:*`/Applications/MAMP/bin/startMysql.sh` |
| * *停止命令的路径:*`/Applications/MAMP/bin/stopMysql.sh` |
| |
| image::images/mysql-admin-props.png[title="包含样例管理设置的 "MySQL Admin Properties"(MySQL 管理属性)对话框"] |
| |
| |
| |
| . 如果选择使用 MySQL Workbench 作为 MySQL 管理工具,则需要指定用于 MAMP 数据库连接的套接字。启动 MySQL Workbench,然后从主页中,单击 "Server Administration"(服务器管理)列中的 "New Server Instance"(新建服务器实例)。 |
| |
| image::images/mysql-workbench-home.png[] |
| |
| |
| |
| . 此时将打开 "Create New Server Instance Profile"(新建服务器实例配置文件)对话框。选择 "Local Socket/Pipe"(本地套接字/管道)连接方法,并在 "Parameters"(参数)标签中添加套接字文件的路径。套接字的默认位置为:`/Applications/MAMP/tmp/mysql/mysql.sock`。 |
| |
| image::images/socket-path.png[] |
| |
| |
| [[phpProject]] |
| == 创建 PHP 项目 |
| |
| 在 IDE 中使用 MAMP 资源创建 PHP 项目时,应指定 IDE 将源复制到 Apache 的 `htdocs` 文件夹中。这样,当您在进行更改之后保存文件时,会自动在已部署版本中更新源。 |
| |
| 例如,创建新的 PHP 项目时,使用新建项目向导(在 IDE 的工具栏中单击 "New Project"(新建项目)图标)(image:images/new-project-icon.png[])。在此向导的第三步 "Run Configuration"(运行配置)中,选择 "Copy files from Sources Folder to anotherlocation"(将源文件夹中的文件复制到其他位置)选项,并键入 `htdocs` 文件夹的路径。 |
| |
| [.feature] |
| -- |
| |
| image::images/new-php-project.png[role="left", link="images/new-php-project.png"] |
| |
| -- |
| |
| IDE 会记住此位置用于将来的项目。有关在 NetBeans IDE 中创建 PHP 项目的进一步说明,请参见link:project-setup.html[+设置 PHP 项目+]。 |
| |
| |
| == 使用 MAMP 启用 Xdebug |
| |
| MAMP 包含预编译的 ``xdebug.so`` 文件。要使用此文件,请在 MAMP 的 ``php.ini`` 中启用它。Xdebug 不与 Zend 优化器一起使用,因此您还必须在 ``php.ini`` 中禁用 Zend 优化器。 |
| |
| *要使用 MAMP 启用 Xdebug,请执行以下操作:* |
| |
| 1. 在编辑器中打开 `php.ini` 文件。此文件位于: |
| |
| `/Applications/MAMP/conf/php5/php.ini`。 |
| |
| |
| . 找到 ``[Zend]`` 部分并注释掉每一行。 |
| |
| [source,ini] |
| ---- |
| |
| ;[Zend] |
| ;zend_optimizer.optimization_level=15 |
| ;zend_extension_manager.optimizer=/Applications/MAMP/bin/php5/zend/lib/Optimizer-3.3.3 |
| ;zend_optimizer.version=3.3.3 |
| |
| ;zend_extension=/Applications/MAMP/bin/php5/zend/lib/ZendExtensionManager.so |
| ---- |
| |
| |
| . 找到 ``[xdebug]`` 部分并激活 Xdebug(将 `xxxxxxxx` 替换为实际数字)。将此部分添加到 ``php.ini`` 结尾(如果不存在)。 |
| |
| [source,ini] |
| ---- |
| |
| [xdebug] |
| |
| xdebug.default_enable=1 |
| |
| xdebug.remote_enable=1 |
| xdebug.remote_handler=dbgp |
| xdebug.remote_host=localhost |
| xdebug.remote_port=9000 |
| xdebug.remote_autostart=1 |
| |
| zend_extension="/Applications/MAMP/bin/php5/lib/php/extensions/no-debug-non-zts-xxxxxxxx/xdebug.so" |
| ---- |
| 有关这些属性的说明,请参见 link:http://www.Xdebug.org/docs/remote[+Xdebug 远程调试+]文档中的“相关设置”。 |
| |
| |
| . 请注意,在上一步中为 Xdebug 指定的远程端口为:9000。这是在 NetBeans 中使用的默认调试器端口。要对此进行验证,请从主菜单中选择 "NetBeans" > "Preferences"(首选项),然后在 "Options"(选项)窗口中选择 "PHP"。 |
| |
| image::images/php-options68.png[title="可以在 "PHP Options"(PHP 选项)窗口中设置调试端口"] |
| |
| 如果需要,您可以在此处更改调试器端口。 |
| |
| |
| . 打开 MAMP 控制面板并选择 "PHP" 标签。取消选择 "Zend Optimizer"(Zend 优化器)。 |
| |
| image::images/mamp-control-panel-preferences-php.png[title="取消选择 "Zend Optimizer"(Zend 优化器)之后带有 "PHP" 标签的 MAMP 控制面板"] |
| |
| |
| |
| . 启动(或重新启动)MAMP Apache 服务器。 |
| |
| |
| == 调试 PHP 项目 |
| |
| 要在 IDE 中调试 PHP 项目,请在 "Projects"(项目)窗口中右键单击该项目并选择 "Debug"(调试)。或者,如果在 "Projects"(项目)窗口中突出显示了该项目,可以单击主工具栏中的 "Debug Project"(调试项目)图标 (image:images/debug-icon.png[])。 |
| |
| 通过在 <<phpOptions,"PHP Options"(PHP 选项)窗口>>中启用此选项,可以将调试器设置为在第一行代码处挂起。 |
| |
| 当调试器会话处于活动状态时,将在编辑器上方显示调试器工具栏。 |
| |
| image::images/debugger-toolbar.png[title="处于挂起状态的调试器工具栏"] |
| |
| 您还可以通过打开 "Sessions"(会话)窗口来验证 PHP 调试会话是否处于活动状态。从主菜单中选择 "Window"(窗口)> "Debugging"(调试)> "Sessions"(会话)。 |
| |
| image::images/debugger-sessions-win.png[title=""Sessions"(会话)窗口指示 Xdebug 调试器会话处于活动状态"] |
| |
| |
| link:/about/contact_form.html?to=3&subject=Feedback:%20Configuring%20PHP%20on%20Mac%20OS[+发送有关此教程的反馈意见+] |
| |
| |
| |
| == 另请参见 |
| |
| 有关 link:https://netbeans.org/[+netbeans.org+] 上 PHP 技术的更多信息,请参见下面的资源: |
| |
| * link:project-config-screencast.html[+NetBeans IDE 6.9-7.0 中的 PHP 编辑器+]。演示新 PHP 编辑器支持的截屏视频。 |
| * link:debugging.html[+调试 PHP 源代码+]。说明如何在 IDE 中使用 Xdebug 进行调试的文档。 |
| * link:wish-list-tutorial-main-page.html[+创建 CRUD 应用程序+]。演示如何使用 IDE 的 PHP 编辑器创建 CRUD 应用程序的 9 部分教程。 |
| * link:remote-hosting-and-ftp-account.html[+在远程 Web 服务器上部署 PHP 应用程序+]。提供有关如何将 PHP 应用程序部署到您具有托管帐户的远程服务器的指导原则的文档。 |
| |
| 要发送意见和建议、获得支持以及随时了解 NetBeans IDE PHP 开发功能的最新开发情况,请link:../../../community/lists/top.html[+加入 users@php.netbeans.org 邮件列表+]。 |
| |