- Установка Apache, PHP, MySQL в macOS
- Установка Apache
- Установка PHP
- Установка MySQL
- Дополнительные действия после установки MySQL
- Меняем пароль root’а в MySQL
- Запуск MySQL сервера из терминала
- Запуск MySQL сервера из Системных настроек
- Проверка работоспособности
- Заключение
- PHP разработчику под MacOS // PHP
- Hosting
- Apache
- MySQL
- MySQL Manager
- suvozit / 1. Enable.md
Установка Apache, PHP, MySQL в macOS
Рассмотрим, как установить веб-сервер Apache, PHP и MySQL в macOS.
Все действия в данной статье будут выполняться в macOS Sierra.
Установка Apache
Хорошая новость — веб-сервер Apache уже установлен в вашей системе. Его нужно только запустить. Для этого откройте терминал и выполните в терминале команду:
Данной командной мы выполняем утилиту apachectl с правами суперпользователя (так как перед командной мы вводим sudo) и передаем утилите опцию start. Обратите внимание, что после того, как вы нажмете Enter, необходимо будет ввести пароль, который вы используете для входа в систему. При вводе пароля на экране не будет никакой индикации или символов, которые вы вводите. Просто введите пароль и нажмите Enter.
Команда должна выполниться без ошибок. Теперь можно проверить, что Apache запущен и работает. Для этого откройте браузер и перейдите на страницу: http://localhost . Откроется страница с надписью «It works!».
Файлы localhost’а лежат в директории /Library/WebServer/Documents .
Установка PHP
И снова хорошая новость — PHP уже установлен. Нужно только включить его поддержку веб-сервером.
Для этого необходимо отредактировать файл конфигурации Apache: /etc/apache2/httpd.conf
Для редактирования мы воспользуемся консольным редактором nano . Он простой, но для новичка может оказаться непривычным.
Откроем файл конфигурации:
В файле необходимо раскомментировать строку, которая отвечает за загрузку модуля php5_module:
LoadModule php5_module libexec/apache2/libphp5.so
Найдите эту строку в файле и удалите перед строкой символ # .
Теперь закройте и сохраните файл. Для этого нажмите Ctrl + X , отобразится предупреждение » Save modified buffer «, нажмите Y , а затем Enter .
Так как конфигурация сервера изменилась, необходимо перезапустить сервер, чтобы новые параметры вступили в силу. Для перезапуска Apache выполните в терминале команду:
Установка 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 год, но исправить ее очень просто. Выполните в терминале последовательно следующие команды:
Теперь снова перезапустите Apache:
Меняем пароль root’а в MySQL
Выше, во время установки MySQL, мы получили временный пароль root пользователя. Однако, его необходимо поменять. Обращаю ваше внимание на то, что речь идеть про пароль пользователя root для MySQL сервера и этот пароль ни как не связан с паролем, который вы используете для входа в систему или при выполнении команд через sudo.
Чтобы задать новый пароль для root пользователя в MySQL необходимо выполнить в терминале ряд команд.
- Остановим MySQL сервер, если вдруг он запущен:
- Запустим сервер в режиме safe mode:
- Запустим консольную утилиту mysql (MySQL Command-Line Tool). Откройте новое окно терминала и выполните:
- Введите команду:
- Затем установим новый пароль (вместо NewPassword введите свой пароль):
- Выйдем из утилиты mysql. Введите команду:
Запуск MySQL сервера из терминала
Запустить MySQL сервер можно из терминала или из Системных настроек.
Для запуска MySQL сервера через терминал выполните команду:
Чтобы остановить сервер выполните:
Запуск MySQL сервера из Системных настроек
В Системных настройках добавился новый пункт MySQL. Можно запускать MySQL сервер оттуда. Там же есть опция для автоматического запуска MySQL сервера при старте системы.
Проверка работоспособности
Как написано выше, файлы сайта localhost находятся в директории /Library/WebServer/Documents. Мы можем для проверки создать PHP файл, в котором выполним функцию phpinfo(). Для этого можно воспользоваться терминалом. Создадим файл /Library/WebServer/Documents/testfile.php и добавим в него вызов функции phpinfo():
Теперь можно открыть файл в браузере, перейдя по адресу: http://localhost/testfile.php
Чтобы проверить, что MySQL сервер работает, и мы можем выполнять действия с базами данных, можно воспользоваться утилитой mysql. Выполните в терминале:
Введите пароль пользователя root и нажмите Enter. Вы попадете в shell для управления MySQL. Введите команду:
Отобразится список текущих баз данных. Завершите работу введя:
Заключение
Итак, мы установили Apache, PHP и MySQL в macOS. Следующим шагом будет установка phpMyAdmin и настройка виртуальных хостов (сайтов).
Источник
PHP разработчику под MacOS // PHP
Так сложилась ситуация, что я стал Mac’оводом… Наиграться с MacOS я успел за пару месяцев, пора переходить к работе — о том что и как я сетапил и пойдёт речь.
Небольшое лирическое отступление – ноут у меня шёл с предустановленной MacOS 10.7 aka Lion, дабы не заморачиваться с установкой был установлен
MacPorts (менеджер пакетов), а с него уже устанавливалась связка Apache+PHP+MySQL и всё работало, пока я не решил обновить систему до Mountain Lion – после оного всё сломалось, то апач не тот, то мускуль отпадает, переустановка через port не помогала — тратить на это время мне не хотелось, поэтому пошёл в обход
Hosting
Из коробки с MacOS идёт Apache 2.2.22 и устаревший PHP 5.3.15, при этом модуль PHP отключён, а DocumentRoot смотрит куда-попало. Если вас эта среда устраивает, а работать вы всегда будете лишь над одним проектом, то вам потребуется лишь изменить httpd.conf:
Изменили, сохранили, перезапустили:
Apache
Меня ситуация с одним проектом совсем не устраивает, поэтому лезем в настройки виртуальных хостов и прописываем хост для каждого проекта, говорим куда смотреть и где искать… Та ну его, я балованный, я не люблю править конфиги ручками, поэтому чуток погугля был найдет скрипт, который будет делать это за меня — https://github.com/pgib/virtualhost.sh. Работать с ним достаточно просто:
PHP версии 5.3 мне не подходит, надо поновее — 5.4, но на MacOS нельзя просто взять и обновить PHP… Для таких страждущих уже всё придумали — взгляните на ресурс http://php-osx.liip.ch/ — там есть простая инструкция по установке:
Если никому не доверяете – то можете сами просмотреть данный скрипт, либо устанавливать вручную
В результате получим следующее:
Если уж упомянул о возможности обновить «ручками» — то вот вам руководство к действию: Upgrading the Native PHP Installation on OS X Mountain Lion (ага, и картинку я тоже у них взял)
MySQL
Для установки MySQL вам потребуется лишь скачать нужный .dmg с официального сайта: идём по ссылке http://dev.mysql.com/downloads/mysql/, затем «Mac OS X ver. 10.6 (x86, 64-bit), DMG Archive»l → «Download» → «No thanks, just start my download!».
Скачанный архив содержит 3 компонента — сам сервер, тулзы автозапуска, панель управления и readme.txt:
Устанавливаем всё перечисленное, хотя установка панели управления – это дело вкуса:
В любом случае у вас будет консоль, стартуем сервер:
Дабы каждый раз с путём не заморачиваться – пропишите его в PATH:
Применяем наши изменения:
Проверяем что всё работает как надо:
И ещё момент — не зубудьте задать пароль для root’а 🙂
Ну мой выбор IDE очевиден — PHPStorm — имхо, лучшая PHP IDE на данный момент, голосую за неё рублём:
MySQL Manager
Для работы с базой данных я использую SQLYog Enterprise — приобретена данная версия ради двух «платных» фич: туннели разных мастей для соединения и синхронизация БД (весь остальной функционал есть и в Community Edition). С данным менеджером лишь одна беда — он доступен лишь под Windows, для установки оного под MacOS потребуется Wine + XQuartz — с такой связкой SQLYog замечательно работает.
Я думаю, те немногие, что столкнутся с данной проблемой, справятся с установкой и без посторонней помощи 🙂
А вот выбор «родного» маковского софта не радует, я нашёл лишь Navicat, к которому оставлено куча нелестных отзывов, но есть trial версии — так что сможете испытать, прежде чем купить. Кстати, в сторе Premium Essintials сейчас по $19.99 (сравнить функционал можно тут), но там засада — в более дешёвой версии нет автодополнения кода в редакторе 🙁
В комментариях подсказали ещё Sequel Pro — хорош для работы с localhost, да и SSH туннель поддерживает, бесплатный. Мне не совсем подходит, т.к. нет туннеля по HTTP (это очень выручает, когда доступ лишь по FTP) и синхронизация между серверами БД тоже отсутствует 🙁
Есть ещё вариант использовать phpMyAdmin, но это совсем крайний случай, я когда на него смотрю мне и работать не хочется
На этом «пост-памятку» закончу, возможно в дальнейшем я его дополню, или дополнят мои читатели, используя комментарии 😉
Источник
suvozit / 1. Enable.md
To find the Apache version
troubleshooting Apache to see if there is anything wrong in its config file by running
System Level Web Root
The files are shared in the filing system at – /Library/WebServer/Documents/
User Level Root
Add the content
Allow some modules:
Make sure these 3 modules are uncommented (the first 2 should be on a clean install):
Then open another Apache config file and uncomment another file:
Restart Apache for the new file to be read:
Then this user level document root will be viewable at: http://localhost/
Get php running
Override .htaccess and allow URL Rewrites
Allow any .htaccess files used to override the default settings
Change AllowOverride None to AllowOverride All
To run a website with no permission issues it is best to set the web root and its contents to be writeable by all, since it’s a local development it should’nt be a security issue.
If you are concerned about security then instead of making it world writeable you can set the owner to be Apache _www
Download and install the Xcode Command Line Tools:
https://developer.apple.com/downloads/
or run the command:
Check for any conflicts or problems
Update and upgrade its formulas in case you already had Homebrew installed before:
Now install it with the following arguments:
Setup PHP CLI binary
Update the $PATH environment variable of shell profile.
Setup auto start:
Create a folder for our LaunchAgents and symlink the start/stop service:
And start PHP-FPM:
Make sure PHP-FPM is listening on port 9000:
The output should look something like this:
Uncomment it by removing #, and replace the libphp5.so directory to our new PHP version. The updated line should look like this:
Check version at
Next step is to install MySQL:
Setup auto start
And start the database server:
Use these commands to start / stop mysql server:
Secure the installation
To seure our MySQL server, we’ll exececute the provided secure_mysql_installation binary to change the root password, remove anonymous users and disbale remote root logins:
Nopes. Not required.
Press enter since you don’t have one set.
Press enter, choose a root password, add it in your 1Password keychain and enter it here.
Yes. They are not necessary.
Yes. No need to log in as root from any other IP than 127.0.0.1.
Yes. We don’t need the testing tables.
Reload the privilege table to ensure all changes made so far will take effect.
Enter your root password and you should see the MySQL console:
Fix the 2002 MySQL Socket error
Fix the looming 2002 socket error – which is linking where MySQL places the socket and where OSX thinks it should be, MySQL puts it in /tmp and OSX looks for it in /var/mysql the socket is a type of file that allows mysql client/server communication.
Источник