Сегодня рассмотрим алгоритм минимальной настройки предустановленных в систему MacOS инструментов для тестирования и разработки проектов. По факту настройки получим локальный веб сервер Apache, phpMyAdmin, MySql и синхронизацию проектов с помощью iCloud Drive. На все про все уйдет минут 10. Для любителей усваивать информацию в формате видео, в самом конце подробный ролик, в описании ролика находится ссылка для загрузки необходимых файлов и всего алгоритма в формате PDF.
Этапы:
1. Настройка vhosts
2. Настройка конфига httpd
3. Распаковка phpMyAdmin
4. Установка и настройка MySql
5. Редактирование hosts
Настройка vhosts
-создаем папку vhosts по пути /private/etc/apache2/
команда для создания в терминале
sudo mkdir /private/etc/apache2/vhosts
-создаем дефолтный конфиг _default.conf
команды для создания и наполнения в терминале
1. Переходим в папку vhosts
cd /private/etc/apache2/vhosts
2.Создаем конфиг
sudo nano _default.conf
3. Заполняем конфиг
<VirtualHost *:80>
DocumentRoot "/Library/WebServer/Documents"
</VirtualHost>
после заполнения в терминале необходимо нажать control + x, затем "Y" и enter для сохранения изменений
-создаем конфиг под проект mysite.local (пример проекта)
1. Создаем
sudo nano mysite.local.conf
2. Заполняем
<VirtualHost *:80>
DocumentRoot "ПУТЬ ПРОЕКТА"
ServerName mysite.local
ErrorLog "/private/var/log/apache2/mysite.local-error_log"
CustomLog "/private/var/log/apache2/mysite.local-access_log" common
<Directory "ПУТЬ ПРОЕКТА">
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
после заполнения в терминале необходимо так же нажать control + x, затем "Y" и enter для сохранения изменений
Путь iCloud Drive - /Users/ПОЛЬЗОВАТЕЛЬ/Library/Mobile Documents/com~apple~CloudDocs/
Путь который использую я (для примера) - /Users/egor/Library/Mobile Documents/com~apple~CloudDocs/Development/Web/mysite
Настройка конфига httpd
-Открываем конфиг в текстовом редакторе, путь /private/etc/apache2/httpd.conf (можно использовать nano)
1. Необходимо раскомментировать строки (убрать #, примечание - версия php может отличаться в зависимости от установленной MacOS):
LoadModule rewrite_module libexec/apache2/mod_rewrite.so
LoadModule php7_module libexec/apache2/libphp7.so
2. Исправляем строки User и Groupвместо _www добавить пользователя и группу, мой вариант для примера
User egor
Group admin
3. Подключаем vhosts после строки "Include /private/etc/apache2/extra/httpd-mpm.conf"
Include /private/etc/apache2/vhosts/*.conf
Распаковка phpMyAdmin
-Распаковываем zip архив с phpMyAdmin по пути /Library/WebServer/Documents
-Меняем имя папки из архива на "phpmyadmin"
-Переходим в папку посредством терминала
cd /Library/WebServer/Documents/phpmyadmin
-Копируем config.sample.inc.php в config.inc.php
sudo cp config.sample.inc.php config.inc.php
Установка и настройка MySql
-Установить MySql.dmg
-Правим localhost
1. Создаем папку mysql в каталоге var
sudo mkdir /var/mysql
2. Создаем псевдоним mysql.sock из temp в созданную папку
sudo ln -s /tmp/mysql.sock /var/mysql/mysql.sock
-Подключаемся к MySql через терминал
/usr/local/mysql/bin/mysql -u root -p
-Правим пароль
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'ПАРОЛЬ';
-Выходим из MySql
/q
Редактирование hosts
-Открываем hosts
sudo nano /etc/hosts
-Добавляем 127.0.0.1 mysite.local
после правок в hosts необходимо нажать control + x, затем "Y" и enter для сохранения изменений
Готово)
После подобной настройки на двух и более устройствах Apple с одинаковым Apple iD и включенным iCloud Drive, можно работать с проектами на разных устройствах.
Количество папок проектов неограниченно, не забывайте под каждый проект создавать конфиг и помещать в папку vhosts, а так же править hosts