Running php on mac os

Содержание
  1. Установка окружения для разработки PHP на macOS и Linux
  2. Настройка окружения PHP-разработчика в macOS
  3. Пакетный менеджер
  4. Установка PHP
  5. Установка веб-сервера
  6. Использование веб-сервера из редактора
  7. Установка nginx
  8. Интеграция PHP и веб-сервера
  9. Установка xdebug
  10. Проверка работы
  11. Установка MySQL в macOS
  12. Установка на Linux
  13. Установка PHP
  14. Настройка xdebug
  15. Installing PHP on your Mac
  16. Installing Homebrew permalink
  17. Installing PHP with Homebrew on Mac permalink
  18. Installing PHP 7.4 with Homebrew permalink
  19. Switching PHP Versions with Homebrew on Mac permalink
  20. Php -v is still showing the wrong version permalink
  21. Thank you for reading, and let’s connect! permalink
  22. Установка php5.5+php-fpm+mysql+nginx на Mac OS X Mavericks
  23. Xcode
  24. Homebrew
  25. PHP-FPM
  26. Настройка PHP в командной строке
  27. Настройка автозапуска
  28. MySQL
  29. Настройка автозапуска
  30. Обезопасьте установку
  31. Проверка соединения
  32. phpMyAdmin
  33. Nginx
  34. Настройка автозапуска
  35. Протестриуйте веб-сервер
  36. Дальнейшая настройка
  37. nginx.conf
  38. Загрузка PHP FPM
  39. Создание виртуальных хостов
  40. Настройка SSL
  41. Включение виртуальных хостов
  42. Последние тесты
  43. Управление сервисами
  44. Nginx
  45. PHP-FPM
  46. MySQL

Установка окружения для разработки PHP на macOS и Linux

22 августа 2017

Настройка окружения PHP-разработчика в macOS

Как установить и настроить все необходимые компоненты, чтобы подготовить свой мак к полноценной разработке на PHP.

Пакетный менеджер

Скачивать и устанавливать весь требуемый софт мы будем с помощью пакетного менеджера Homebrew.
Пакетный менеджер — это инструмент, который значительно облегчает процесс установки любых программ. С Homebrew установка программы на компьютер сводится буквально к одной команде в терминале.

Но сам Homebrew тоже требуется установить, так как по умолчанию он не входит в состав операционной системы.
Понятная инструкция по его установке есть на главной странице этой программы. Выполните её и переходите к следующему шагу.

Установка PHP

Начнём с установки PHP-интерпретатора.
Все последующие команды выполняются через терминал.
Установить интерпретатор можно через одну простую команду:

Проверим, что всё установилось корректно:

Установка веб-сервера

PHP — это язык программирования, на котором можно создавать современные сайты. Обработкой запросов пользователей и отдачей им запрошенных страниц занимаются специальные программы — веб-сервера.

PHP работает в тесной связке с веб-сервером, так как именно последний обращается к нему и, в конечном счёте запускает наши сценарии. В общем, без веб-сервера нам никак не обойтись.

Поднять веб-сервер можно с помощью плагинов для редактора или настроить веб-сервер самостоятельно. Рассмотрим оба варианта.

Использование веб-сервера из редактора

Современные редакторы могут самостоятельно запускать сервер. В VS Code это можно сделать через плагин PHP Server, а в PHP Storm через — PHP Debug Server. По ссылкам есть инструкция с настройками. Для того, чтобы сервер стартовал, нужно чтобы локально был установлен php интерпретатор.

Установка nginx

Рассмотрим как установить веб-сервер самостоятельно.

Установим последнюю версию nginx:

Запускаем nginx, чтобы он работал в фоне и обслуживал наши запросы:

Проверяем, что всё установилось корректно, и nginx успешно работает на нашем компьютере:
откройте любой браузер и введите в адресной строке следующий URL:

в ответ вы должны увидеть страницу с текстом «Welcome to nginx!»

Интеграция PHP и веб-сервера

На этом шаге мы «подружим» PHP-интерпретатор и nginx, чтобы при запросе веб-страниц с расширением.php автоматически выполнялся php-сценарий и мы видели результат его работы в браузере.

Мы сделаем простую настройку сервера так, чтобы он слушал одну папку проекта и выдавал результат через запрос на страницу http://localhost/ .

Откройте конфигурационный файл nginx:

(*) nano — консольный текстовый редактор для Unix и Unix-подобных ОС. Вместо него файлы можно открывать в других редакторах, заменив на nano на phpstorm , code (нужно установить поддержку команды через редактор) для VS Code или другие.

Добавим в конец документа перед закрывающей скобкой от блока http следующий код:

USERNAME нужно будет в двух местах заменить на имя вашего пользователя

Здесь мы говорим серверу, чтобы он слушал 80 порт страницы localhost и при запросе показывал содержимое папки yeticave . После USERNAME вы можете выбрать путь до любой удобной для вас папки.

Разрешим nginx читать содержимое нашего проекта

(*)Поменяйте USER на имя вашего пользователя и yeticave на папку вашего проекта

Для того, чтобы изменения применились на 80 порт, нужно перезагрузить сервер с доступом администратора командой:

Установка xdebug

Установить xdebug можно простой командой:

Проверка работы

Базовая настройка окружения закончена. Осталось проверить, что мы всё сделали правильно.
Создадим тестовый PHP-сценарий со следующим содержимым:

Сохраните его по адресу вашего проекта, например, /Users/user/Sites/yeticave в файл index.php . Вновь откройте браузер и перейдите по ссылке http://localhost/index.php. Вы должны увидеть большую страницу с подробной информацией об установленной версии PHP и всех настройках. Это будет означать, что вы всё сделали правильно, а значит готовы писать и запускать свои первые php-сценарии. Обратите внимание, что все файлы и папки проекта при этой конфигурации должны лежать в корне папки yeticave .

Читайте также:  Эмулятор андроид для windows 10 для слабого пк 4pda

Установка MySQL в macOS

Актуальную версию MySQL для macOS можно загрузить с официальной страницы. Для удобства установки рекомендуется загружать DMG Archive. В этом случае процесс установки будет выполняться с помощью стандартного инсталлятора.

Рисунок 1. Окно инсталлятора

Нажимаем Continue пока не дойдём до шага Installation Type . На этом шаге необходимо проверить перечень компонентов для установки. Нажимаем кнопку Customize . Отмечаем все флаги как на рисунке 2.

Рисунок 2. Выбор компонент для установки

Нажимаем Install . После установки отобразится всплывающее окно с автоматически сгенерированным паролем для пользователя root. Обязательно его запомните. Пример окна с автоматически сгенерированным паролем приведён на рисунке 3. Далее нажимаете кнопку Finish . На этом установка MySQL завершена.

Рисунок 3. Автоматически сформированный пароль

Сразу после установки служба MySQL не будет запущена. Запуск необходимо выполнить вручную. Проще всего это сделать через аплет System Preferences . Открываем и запускаем аплет для управления MySQL (рисунок 4). В появившемся окне нажимаем кнопку Start MySQL Server .

Рисунок 4. Окно System Preferences Рисунок 5. Аплет запуска MySQL

Чтобы протестировать соединение с MySQL и получить возможность выполнять базовые задачи, вам потребуется фирменная утилита от Oracle — MySQL Workbench. Установка утилиты выполняется стандартным для macOS способом: запускаем загруженный DMG и в окне инсталлятора перетаскиваем иконку MySQL Workbench в папку Application.

Для тестирования корректности установки MySQL запустим MySQL Workbench и попробуем установить соединение.

Рисунок 6. Главное окно MySQL Workbench

В главном окне MySQL Workbench, в разделе MySQL Connections кликаем по автоматически подготовленному профилю Local instance . Появится окно ввода пароля. Вводите пароль, который вы сохранили на этапе установки. Если пароль верный, то появится окно с предложением указать текущий пароль и установить новый. Выполните это действие и нажмите Ok . В случае установки соединения вы увидите окно как на рисунке.

Рисунок 7. Соединение с MySQL установлено

Установка на Linux

Настроить рабочее окружение для разработки на PHP в Linux возможно несколькими способами. Рассмотрим один из наиболее быстрых способов: настройка связки PHP плюс nginx.

Запустите приложение «Терминал». Ярлык на запуск доступен в менеджере приложений.

Рисунок 1. Окно терминала

  • Обновим локальный индекс пакетов APT
  • Для работы с PHP нам потребуется веб-сервер. В репозиториях доступно несколько популярных веб-серверов, мы отдадим предпочтение nginx. Помимо высокой производительности его легче конфигурировать.
  • Следующим шагом выполним запуска nginx. Запомните эту команду. Она вам пригодится при добавлении новых виртуальных хостов.
  • nginx установлен и теперь нам требуется выполнить базовое конфигурирование. Наша цель — создать новый виртуальный хост, который будет доступен по адресу yourproject.local , где вместо yourproject может быть название вашего проекта. Например: doingsdone.local , eticave.local . Обратите внимание, имена доменов не могут содержать пробелы. Определитесь с именем домена (далее «имя хоста для проекта»). Мы будем ориентироваться на проект yeticave.local , поэтому именно так будем называть конфигурационный файл. Перейдите в директорию sites-available . В этой директории, nginx хранит конфигурационные файлы всех виртуальных хостов. Чтобы увидеть список всех доступных виртуальных хостов, выведите содержимое каталога: Рисунок 2. Список доступных виртуальных хостов
  • Название конфигурационного файла должно совпадать с именем хоста. Поскольку мы планируем сделать конфигурационный файл для хоста yeticave.local , нам потребуется создать файл yeticave.local . Сделаем это:
  • Файл готов, теперь откроем его в консольном редакторе nano (установлен по умолчанию в большинстве современных дистрибутивов) и опишем минимальную конфигурацию.
  • Скопируйте в открытый файл yeticave.local ниже приведённый конфигурационный файл. Информацию обо всех непонятных строках вы сможете почерпнуть из официальной документации к nginx. Рисунок 3. Подготовка конфига Для сохранения изменений в файле нажмите комбинацию клавиш ctrl + o. Затем закройте редактор nano сочетанием клавиш ctrl + x.
  • Протестируем созданный конфигурационный файл на наличие ошибок: Рисунок 4. Тестирование конфигурационного файла nginx
  • На этом процесс создания конфигурационного файла завершён. Активируем только что созданный виртуальный хост. Для этого перейдём в директорию sites-enabled и создадим в ней символическую ссылку на наш конфигурационный файл.
  • Если на текущем шаге попытаться открыть браузер и ввести в адресной строке http://yeticave.local , то ничего, кроме ошибки «Сервер не найден», мы не увидим. Исправим проблему добавлением новой записи в hosts : В самом начале файле добавьте строку: Обратите внимание, мы пишем только доменное имя без указания протокола (http). Сохраняем изменения ctrl + o и закрываем редактор nano сочетанием клавиш ctrl + x .
  • Установка PHP

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

    В окне терминала введите команду для установки php-fpm из репозитория.

    Читайте также:  Linux dig dns server

    Важно: обязательно обратите внимание на устанавливаемую версию. В зависимости от дистрибутива она может отличаться. Например, в Ubuntu 16.04 устанавливается 7.0. Если номер версии отличается от той, что мы указали в конфигурационном файле yeticave.local , то необходимо её исправить.

    Настройка xdebug

    1. Вводим команду редактирования файла:
    2. Добавляем в файл конфигурацию для xdebug.

    Сохраняем изменения ctrl + o и закрываем редактор nano ctrl + x.

    Источник

    Installing PHP on your Mac

    2 February, 2021 — 4 minute read

    I’ve got a brand new Mac yesterday and noted that it states PHP will be removed from future Mac OS versions by default.

    I’m pretty surprised they go this way. By default, it comes with PHP 7.3, and I needed 7.4 for my project so let me guide you through the process of setting up PHP on your Mac!

    Mac’s warning looks like this:

    However, don’t be scared. It’s quite easy these days to install PHP, and even install multiple versions if you like.

    When it comes to installing software on your Mac, there is literally only one package manager we need, and it’s Homebrew.

    It can install any package or software you want and even install specific versions.

    Quick guide: Run the following command in your terminal:

    To install PHP, we can run the following command:

    This will install the latest stable version of PHP (At the moment of writing, this is PHP 8.0).

    Before running any brew commands, it’s a good habit to run the following commands first. These will check if brew is all up to date and running the latest versions.

    In my case, I wanted to install PHP 7.4 since it’s the version our server is running.

    To install a specific version, we can use the @ notation.

    This will run the installer, and it should end with a success notice in your terminal.

    However, even though this installed PHP, it didn’t change our running instance yet.

    So if we run the php -v command, we might still see a different version like PHP 7.3.14 (CLI) or whatever you have installed.

    To fix this, we need to link the correct PHP version.

    Switching PHP Versions with Homebrew on Mac permalink

    Now that we installed versions, we can easily switch between them using the link command.

    First, check which version of PHP is currently running:

    Then we can unlink that version by using:

    The next step is to link the version we want:

    It will tell you to run a script to add the path:

    This will make sure the right PHP version is loaded, now if you run php -v again it should show:

    And there we go, we switched to the PHP version.

    Php -v is still showing the wrong version permalink

    I had the issue when upgrading from 7.4 to 8.0 for my demo that I kept seeing 7.4 when running php -v . To fix this manually, remove the old line in your .zshrc file.

    Remove the line that points to your old instance of PHP.

    Note: This is an example of my version. It might differ from what you installed before.

    Thank you for reading my blog. Feel free to subscribe to my email newsletter and connect on Facebook or Twitter

    Источник

    Установка php5.5+php-fpm+mysql+nginx на Mac OS X Mavericks

    Каждый веб-разработчик, выбравший Mac, после первичной настройки системы ищет рабочий инструментарий. И если c IDE и редакторами всё понятно, то что-либо подобное по удобству win-довым OpenServer или Denwer за бесплатно найти трудно. Есть отличное решение MAMP PRO, но оно стоит две тысячи деревянных. Да и работа через Apache некоторых может смутить.

    Занимаясь решением этого вопроса, набрёл на интереснейший материал, который рассказывает о том, как при помощи консольного пакет-менеджера Homebrew настроить рабочее пространство буквально за 5-10 минут. Публикую его перевод, потому что кому-нибудь подобная инструкция по настройке веб-окружения на Mac обязательно пригодится.

    «Только что получил новый MacBook Pro и решил настроить его с чистого листа, потому что я использую тот же бэкап Time Machine примерно уже четверы года. Хороший шанс избавиться от стэка веб-сервера/LAMP (Linux Apache MySQL PHP) и заменить его Nginx и PHP-FPM как реализацию FastCGI. Ниже вы можете прочесть, как настроить Nginx, PHP-FPM, MySQL и PhpMyAdmin на OS X 10.9 / Mavericks.

    Читайте также:  Пропал пин код windows 10 после обновления

    Xcode

    Прежде всего, установите последнюю версию Xcode через Mac App Store:
    Скачать Xcode.app (через Mac App Store)

    Как только закончится загрузка, откройте Xcode в папке /Applications и согласитесь с лицензией.

    Откройте окно Терминала и установите Xcode через следующую команду:

    Подтвердите установку при помощи кнопки Install .

    Вернитесь обратно в Xcode, нажмите ⌘ + , для доступа к настройкам и перейдите на вкладку Locations. Установите Command Line Tools на последнюю доступную версию, Xcode 5.0.2 (5A3005) в моём примере:

    Homebrew

    Теперь необходимо установить Homebrew, который является менеджером пакетов для OS X. Вы возможно уже слышали про apt-get или aptitude на дистрибутивах Linux для установки пакетов и зависимостей для конкретный приложений. brew работает также, только на компьютерах под управлением Mac OS X. Он также удостоверится, что вы получите последние обновления для установленных приложений, так что вам не нужно будет беспокоиться из-за просроченных версиях или брешах в системе безопасности, эксплойтах и так далее.

    Прежде всего, нам понадобиться Xquarz:

    Теперь нам необходимо загрузить и установить Homebrew при помощи следующей команды:

    Поверим на любые конфликты и проблемы:

    Обновим репозитории и приложения при помощи Homebrew:

    PHP-FPM

    Потому как Homebrew не имеет репозитория по-умолчанию для PHP-FPM, нам необходимо его добавить:

    Установим PHP-FPM при помощи следующих аргументов:

    Homebrew загрузит исходный код PHP-FPM и скомпилирует его аз вас. Дайте ему немного времени, это может занять несколько минут.

    Настройка PHP в командной строке

    Если вы хотите использовать PHP в командной строке, вам необходимо обновить переменную окружения $PATH в файле

    Настройка автозапуска

    Удостоверьтесь, что PHP-FPM слушает порт 9000:

    Вывод должен выглядеть примерно следующим образом:

    MySQL

    Следующий шаг для установки MySQL:

    Настройка автозапуска

    И запустите сервер баз данных:

    Обезопасьте установку

    Для безопасности нашего MySQL-сервера мы вызовем идущий в компоекте бинарник secure_mysql_installation для смены root-пароля, удаления анонимного пользователя и отключения возможности дистанционного логина под root-ом:

    Пожалуйста, укажите текущий пароль, если он уже установлен.

    Нажите enter, указав пароль для root-пользователя. По желанию сохраните его в менеджерах паролей LastPass или 1Password.

    Да, в них нет необходимости.

    Да, нет необходимости в авторизации под root с любого другого IP кроме 127.0.0.1.

    Да. Нам не нужны тестовые таблицы.

    Перезагрузка таблицы привилегий даст нам возможность удостовериться, что изменения вступили в силу.

    Проверка соединения

    Введите указанный ранее root-пароль и увидите консоль MySQL:

    Закончите сессию при помщи команды \q :

    phpMyAdmin

    Установите autoconf который необходим для phpMyAdmin:

    Установите переменную окружения $PHP_AUTOCONF:

    Приступим к установке phpMyAdmin:

    Nginx

    Установите Nginx при помощи команды:

    Настройка автозапуска

    Так как мы используем 80 порт, необходимо запускать Nginx под пользователем root:

    Протестриуйте веб-сервер

    Конфигурация по-умолчанию слушает порт 8080 вместо стандартного для протокола HTTP порта 80. Пока проигнорируем это:

    Ответ должен выглядеть следующим образом:

    Снова остановим Nginx:

    Дальнейшая настройка

    nginx.conf

    Создайте папки, которые понадобятся нам при последующей конфигурации Nginx:

    Удалите текущий файл nginx.conf (который всегда будет доступен по адресу /usr/local/etc/nginx/nginx.conf.default , если вы захотите взглянуть на его код) и загрузите созданные мною настройки при помощи curl с GitHub:

    Конфиуграционный файл прост и легковесен насколько это возможно: настройки worker, пути/форматы логов и несколько includes. Ничего лишнего в отличие от nginx.conf.default .

    Загрузка PHP FPM

    Скачайте мои настройки PHP-FPM с GitHub:

    Создание виртуальных хостов

    Клонируйте тестовый виртуальный хост (включая рерайты для 404, 403 и phpinfo() ) используя git :

    И удалите папку /var/www/.git , чтобы git не отслеживал последующие изменнения.

    Настройка SSL

    Создайте папку для наших сертификатов SSL и частных ключей:

    Сгенерируйте 4096bit RSA ключи и само-подписные сертификаты следюущей командой:

    Включение виртуальных хостов

    Теперь нам нужно создать симлинки в папке sites-enabled для виртуальных хостов с целью включить их:

    Снова стартуем Nginx:

    Последние тесты

    Вот оно, всё должно работать. Щелкайте на ссылках ниже с целью удостовериться в этом:

    Управление сервисами

    В силу того, чтоы вам рано или поздно понадобиться перезапустить тот или иной вресив, вам возможно понадобятся дополнительные алиасы:

    Вы можете или открыть новое окно/сессию Терминала или же вручную перезагрузить

    /.bash_profile при помощи команды:

    Теперь вы можете использовать алиасы вместо печатания длинных команд launchctl , как то было выше.

    Nginx

    Вы можете стартовать, остановить и перезапустить Nginx при помощи команд:

    Быстрый доступ к логам:

    PHP-FPM

    Старт, стоп и перезагрузка PHP-FPM:

    MySQL

    Старт, стоп и рестарт MySQL-сервера:

    Дайте мне знать, если застряли или у вас есть какие-либо дополнения!»

    Источник

    Оцените статью