Настройка PHP, Apache, MySQL и Xdebug для разработки приложений на PHP в MAC OS X

This tutorial needs a review. You can open a JIRA issue, or edit it in GitHub following these contribution guidelines.

Этот учебный курс содержит инструкции по настройке PHP для пакета MAMP (M*acintosh, A*pache, *M*ySQL, *P*HP), который включает в себя веб-сервер Apache, сервер баз данных MySQL и модуль PHP. MAMP - среда разработки на PHP для Mac, полностью совместимая с NetBeans IDE.

Xdebug - расширение для PHP, используемое для предоставления ценной информации для отладки сценариев PHP. Отладчик NetBeans работает поверх расширения Xdebug, что обеспечивает эффективный механизм отладки для среды разработки.

Для работы с этим учебным курсом требуются программное обеспечение и ресурсы, перечисленные ниже.

Программное обеспечение или ресурс Требуемая версия

IDE NetBeans

Пакет загрузки PHP

Комплект для разработчика на языке Java (JDK)

7 или 8

MAMP

1.7.x

Xdebug (не обязательно)

2.x

В пакет MAMP входят веб-сервер Apache, модуль PHP и база данных MySQL. Mac OS X 10.5 и более поздние версии включают в себя базу данных MySQL и сервера Apache с поддержкой PHP. Разумеется, встроенную базу данных и сервер можно настроить и в IDE, но универсальный пакет MAMP представляет собой более удобное и простое решение.

Установка и настройка MAMP

  1. Загрузите последнюю версию MAMP.

  2. Распакуйте загруженный архив и запустите файл .dmg. Когда отобразится экран установщика, переместите MAMP в папку /Applications.

mamp install
Figure 1. На экране установщика MAMP отображаются компоненты MAMP и MAMP-Pro
  1. Перейдите в папку /Applications/MAMP и дважды щелкните файл MAMP.app. Открывается панель управления MAMP.

Также можно установить виджет панели управления MAMP, следуя инструкциям в файле MAMP/README.rtf. С помощью этого виджета можно будет запускать и останавливать серверы.

mamp control panel
  1. Нажмите "Предпочтения". На открывшейся панели "Предпочтения" перейдите на вкладку "Порты".

  2. Выберите параметр "Значения умолчанию" для портов Apache и MySQL. Для порта Apache устанавливается значение 80, а для порта MySQL - 3306.

mamp control panel preferences ports
Figure 2. Панель управления MAMP со вкладкой

Регистрация базы данных MySQL для MAMP

База MySQL, включенная в состав пакета MAMP, по умолчанию находится в каталоге /Applications/MAMP/db/MySQL. В качестве имени пользователя и пароля по умолчанию используется значение root. Эти данные можно проверить на странице приветствия MAMP, которая открывается в браузере при запуске MAMP.

IDE взаимодействует с базами данных в окне "Службы" (⌘-5). Базу данных MySQL для MAMP можно зарегистрировать следующим образом:

  1. Щелкните правой кнопкой мыши узел "Базы данных > MySQL Server" и выберите "Свойства". Отображается диалоговое окно "Свойства MySQL Server". В этом диалоговом окне можно настроить все параметры MySQL.

  2. Введите имя хоста для сервера баз данных, номер порта, имя пользователя и пароль. Все эти данные отображаются на странице приветствия MAMP при запуске сервера и базы данных. При локальном запуске MAMP по умолчанию используются следующие параметры:

    • *Имя хоста для сервера: *localhost

    • *Номер порта сервера: *3306

    • *Имя администратора: *root

    • *Пароль администратора: *root

mysql basic properties
Figure 3. В диалоговом окне
  1. Перейдите на вкладку "Администрирование", где можно настроить параметры запуска и останова сервера баз данных в IDE. Сценарии оболочки MAMP хранятся в папке bin. Здесь находятся сценарии для запуска и останова серверов. Вы можете выбрать путь к средствам администрирования и связать IDE с файлом MAMP.app, чтобы в дальнейшем запускать панель управления MAMP из IDE. Для этого введите путь /Applications/MAMP/MAMP.app. В качестве альтернативы можно использовать инструмент MySQL Workbench, предоставляющий интуитивный графический интерфейс для выполнения административных задач, таких как настройка и мониторинг сервера MySQL, управление пользователями и подключениями, создание резервных копий и т. д. Чтобы использовать инструмент MySQL Workbench, необходимо сначала загрузить и установить его, а затем ввести в диалоговом окне следующие параметры:

    • *Путь/URL средства администрирования: */Applications/MySQL Tools/MySQLWorkbench.app (папка установки MySQL Workbench по умолчанию)

    • *Путь для команды запуска: */Applications/MAMP/bin/startMysql.sh

    • *Путь для команды останова: */Applications/MAMP/bin/stopMysql.sh

mysql admin props
Figure 4. В диалоговом окне
  1. Если в качестве инструмента администрирования сервера MySQL планируется использовать MySQL Workbench, необходимо указать сокет для подключения к базе данных MAMP. Запустите MySQL Workbench. В разделе "Администрирование сервера" на главной странице выберите "Новый экземпляр сервера".

mysql workbench home
  1. Отображается диалоговое окно "Создать профиль нового экземпляра сервера". Выберите метод подключения "Локальный сокет/канал" и укажите путь к файлу сокета на вкладке "Параметры". По умолчанию сокет находится в папке /Applications/MAMP/tmp/mysql/mysql.sock.

socket path

Создание проектов PHP

Для создания проектов PHP в IDE с использованием ресурсов MAMP необходимо настроить IDE таким образом, чтобы она копировала ваши ресурсы в папку Apache htdocs. В этом случае при сохранении изменений в файлах будет автоматически обновляться исходный код развернутой версии.

Например, можно создать новый проект PHP с помощью мастера новых проектов (нажмите значок "Создать проект" на панели инструментов IDE ( new project icon ). На третьем экране мастера "Конфигурация запуска" выберите параметр "Копировать файлы из исходной папки в другое расположение" и укажите путь к папке htdocs.

new php project

IDE запоминает указанный путь и использует его в последующих проектах. Более подробные инструкции по созданию проектов PHP в NetBeans IDE см. в разделе Настройка проекта PHP.

Включение расширения Xdebug в MAMP

В пакет MAMP входит заранее скомпилированный файл xdebug.so . Чтобы использовать этот файл, необходимо включить его поддержку в файле MAMP php.ini . Расширение Xdebug несовместимо с Zend Optimizer, поэтому необходимо отключить Zend Optimizer в том же файле php.ini .

Чтобы включить расширение Xdebug в MAMP:

  1. Откройте файл php.ini в редакторе. Этот файл находится в папке

/Applications/MAMP/conf/php5/php.ini.

  1. Найдите раздел [Zend] и закомментируйте в нем все строки.

;[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
  1. Найдите раздел [xdebug] и активируйте Xdebug (замените xxxxxxxx фактическим номером). Добавьте в конец файла php.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"

Пояснения см. в разделе "Связанные настройки" документа Удаленная отладка Xdebug.

  1. Обратите внимание, что на предыдущем этапе был указан удаленный порт Xdebug 9000. Этот порт отладчика используется в NetBeans по умолчанию. Чтобы проверить номер порта, выберите "NetBeans > Предпочтения" в главном меню, затем выберите PHP в окне "Параметры".

php options68
Figure 5. Порт отладки можно указать в окне

При необходимости здесь можно изменить порт отладчика.

  1. Откройте панель управления MAMP и перейдите на вкладку "PHP". Снимите флажок для параметра Zend Optimizer.

mamp control panel preferences php
Figure 6. Панель управления MAMP со вкладкой
  1. Запустите (или перезапустите) сервер Apache MAMP.

Отладка проектов PHP

Чтобы выполнить отладку проекта PHP в IDE, щелкните проект правой кнопкой мыши в окне "Проекты" и выберите "Отладка". Также, если проект выбран в окне "Проекты", можно нажать значок "Отладка проекта" ( debug icon ) на основной панели инструментов.

Если требуется временно приостановить отладчик на первой строке кода, включите соответствующий параметр в окне Параметры PHP.

Во время активного сеанса отладчика панель инструментов отладчика отображается над редактором.

debugger toolbar
Figure 7. Панель инструментов отладчика в приостановленном состоянии

Чтобы проверить, активен ли сеанс отладки PHP, также можно открыть окно "Сеансы". Выберите "Окно > Отладка > Сеансы" в главном меню.

debugger sessions win
Figure 8. Информация в окне

См. также

Для получения дополнительных сведений о технологии PHP на сайте netbeans.org можно воспользоваться следующими материалами:

Для отправки комментариев и предложений, получения поддержки и новостей о последних разработках, связанных с PHP IDE NetBeans присоединяйтесь к списку рассылки users@php.netbeans.org.