Установка Apache, PHP, MySQL в macOS
Рассмотрим, как установить веб-сервер Apache, PHP и MySQL в macOS.
Все действия в данной статье будут выполняться в macOS Sierra.
Установка Apache
Хорошая новость — веб-сервер Apache уже установлен в вашей системе. Его нужно только запустить. Для этого откройте терминал и выполните в терминале команду:
sudo apachectl start
Данной командной мы выполняем утилиту apachectl с правами суперпользователя (так как перед командной мы вводим sudo) и передаем утилите опцию start. Обратите внимание, что после того, как вы нажмете Enter, необходимо будет ввести пароль, который вы используете для входа в систему. При вводе пароля на экране не будет никакой индикации или символов, которые вы вводите. Просто введите пароль и нажмите Enter.
Команда должна выполниться без ошибок. Теперь можно проверить, что Apache запущен и работает. Для этого откройте браузер и перейдите на страницу: http://localhost. Откроется страница с надписью «It works!».
Файлы localhost'а лежат в директории /Library/WebServer/Documents.
Установка PHP
И снова хорошая новость — PHP уже установлен. Нужно только включить его поддержку веб-сервером.
Для этого необходимо отредактировать файл конфигурации Apache: /etc/apache2/httpd.conf
Для редактирования мы воспользуемся консольным редактором nano. Он простой, но для новичка может оказаться непривычным.
Откроем файл конфигурации:
sudo nano /etc/apache2/httpd.conf
В файле необходимо раскомментировать строку, которая отвечает за загрузку модуля php5_module:
LoadModule php5_module libexec/apache2/libphp5.so
Найдите эту строку в файле и удалите перед строкой символ #.
Теперь закройте и сохраните файл. Для этого нажмите Ctrl + X, отобразится предупреждение "Save modified buffer", нажмите Y, а затем Enter.
Так как конфигурация сервера изменилась, необходимо перезапустить сервер, чтобы новые параметры вступили в силу. Для перезапуска Apache выполните в терминале команду:
sudo apachectl restart
Установка MySQL
Для установки MySQL необходимо скачать с сайта mysql.com пакет с инсталлятором.
Перейдите на страницу http://dev.mysql.com/downloads/mysql/ и скачайте DMG-файл вида mysql-5.7.16-osx10.11-x86_64.dmg. После того, как вы нажмете на ссылку Download, откроется страница с предложением войти или зарегистрироваться на сайте. Регистрироваться не нужно, внизу страницы есть ссылка "No thanks, just start my download.", нажмите на нее.
Дважды щёлкните по только что загруженном DMG-файлу. Откроется новое окно, в котором дважды щелкните по файлу mysql-5.7.16-osx10.11-x86_64.pkg. Запустится инсталлятор MySQL. Читайте сообщения инсталлятора и нажимайте кнопку Продолжить.
В конце установки отобразится окошко, в котором будет написан временный пароль root'а для доступа к MySQL. Запишите его.
Дополнительные действия после установки MySQL
Теперь нужно выполнить еще одно важное действие. Дело в том, что в MySQL есть небольшая ошибка, которая уходит в корнями в 2012 год, но исправить ее очень просто. Выполните в терминале последовательно следующие команды:
sudo mkdir /var/mysql
sudo ln -s /tmp/mysql.sock /var/mysql/mysql.sock
Теперь снова перезапустите Apache:
sudo apachectl restart
Меняем пароль root'а в MySQL
Выше, во время установки MySQL, мы получили временный пароль root пользователя. Однако, его необходимо поменять. Обращаю ваше внимание на то, что речь идеть про пароль пользователя root для MySQL сервера и этот пароль ни как не связан с паролем, который вы используете для входа в систему или при выполнении команд через sudo.
Чтобы задать новый пароль для root пользователя в MySQL необходимо выполнить в терминале ряд команд.
- Остановим MySQL сервер, если вдруг он запущен:
sudo /usr/local/mysql/support-files/mysql.server stop
- Запустим сервер в режиме safe mode:
sudo /usr/local/mysql/bin/mysqld_safe --skip-grant-tables
- Запустим консольную утилиту mysql (MySQL Command-Line Tool). Откройте новое окно терминала и выполните:
/usr/local/mysql/bin/mysql -u root
- Введите команду:
FLUSH PRIVILEGES;
- Затем установим новый пароль (вместо NewPassword введите свой пароль):
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword';
- Выйдем из утилиты mysql. Введите команду:
\q
- Закройте оба терминала, теперь можно подключиться к MySQL, используя новый пароль:
sudo /usr/local/mysql/support-files/mysql.server start
/usr/local/mysql/bin/mysql -u root -p
Запуск MySQL сервера из терминала
Запустить MySQL сервер можно из терминала или из Системных настроек.
Для запуска MySQL сервера через терминал выполните команду:
sudo /usr/local/mysql/support-files/mysql.server start
Чтобы остановить сервер выполните:
sudo /usr/local/mysql/support-files/mysql.server stop
Запуск MySQL сервера из Системных настроек
В Системных настройках добавился новый пункт MySQL. Можно запускать MySQL сервер оттуда. Там же есть опция для автоматического запуска MySQL сервера при старте системы.
Проверка работоспособности
Как написано выше, файлы сайта localhost находятся в директории /Library/WebServer/Documents. Мы можем для проверки создать PHP файл, в котором выполним функцию phpinfo(). Для этого можно воспользоваться терминалом. Создадим файл /Library/WebServer/Documents/testfile.php и добавим в него вызов функции phpinfo():
sudo echo "<?php phpinfo();" | sudo tee /Library/WebServer/Documents/testfile.php > /dev/null
Теперь можно открыть файл в браузере, перейдя по адресу: http://localhost/testfile.php
Чтобы проверить, что MySQL сервер работает, и мы можем выполнять действия с базами данных, можно воспользоваться утилитой mysql. Выполните в терминале:
/usr/local/mysql/bin/mysql -u root -p
Введите пароль пользователя root и нажмите Enter. Вы попадете в shell для управления MySQL. Введите команду:
show databases;
Отобразится список текущих баз данных. Завершите работу введя:
\q
Заключение
Итак, мы установили Apache, PHP и MySQL в macOS. Следующим шагом будет установка phpMyAdmin и настройка виртуальных хостов (сайтов).