Устанавливаем веб-сервер на Mac OS
Инструкция по установке локального веб-сервера на Mac OS.
Далее ниже будем настраивать веб-сервер самостоятельно, без использования сторонних программ. Благо Mac OS является UNIX системой и настройка веб-сервера почти не отличается от Linux серверов.
Для установки веб-сервера можно воспользоваться готовыми решениями. Например, MAMP PRO. Но если хочется hardcor-а или не хочется платить за готовые решения, то это статья для вас.
Ставим менеджер пакетов для Mac OS
Ставим apache на Mac OS
Работаем через командную строку, но правки в файлах намного быстрее делать через сторонние редакторы, например, Sublime Text.
Устанавливаем apache
Перенастроим дефолтный конфигурационный файл:
1. Меняем директорию для сайтов
2. Меняем порт
Теперь сможем заходить на локальные сайты без указания порта
3. Меняем директиву AllowOverride
Обяжем Apache использовать файлы .htaccess.
4. Раскомментируем строку mod_rewrite
5. Поменяем стандартного пользователя
на нашего в системе и меняем его группу на stuff
Пользователь группы может быть другой. Для того чтобы это узнать, открываем свойство любой папки и смотрим что там указано. В примере ниже указан пользователь everyone.
В этом случае в строке указываем именного этого пользователя:
6. Изменим ServerName
Сохраняем файл, но не закрываем, скоро он снова понадобится.
Ставим последнюю версию PHP на Mac OS
Вернемся к файлу настроек апача и сообщим ему, чтобы тот использовал наш PHP. Файл:
В нем переходим к разделу загрузки модулей, видим там
Добавляем после этого
Также заменяем в этом файле
DirectoryIndex index.php index.html
Сохраняем, но опять не закрываем файл, он понадобится и дальше.
Запустить сервис PHP
Посмотреть все сервисы
Настройки для PHP указанной выше версии будут здесь:
После изменения обязательно надо перегрузить все сервисы (не только PHP)
Устанавливаем PostgreSQL на Mac OS
Устанавливаем MySQL на Mac OS
Для управления базой данных через веб-интерфейс также можно установить phpMyAdmin:
Или использовать сторонние программы, типа Sequel Pro
Если был установлен phpmyadmin, то допишем в файл:
Если после этого сразу зайти в phpmyadmin или через любое другое приложение, будет ошибка:
mysqli_real_connect(): The server requested authentication method unknown to the client [caching_sha2_password]
mysqli_real_connect(): (HY000/2054): The server requested authentication method unknown to the client
В MySQL 8 изменили аутентификацию с mysql_native_password на caching_sha2_password, как на более безопасную. Если мы хотим входить как и раньше, то внесем изменения.
Перегрузим все сервисы:
Войдем внутрь MySQL
Должны зайти на сервер:
Добавим старую авторизацию и пароль: password
Но и этого не достаточно, будут ошибки:
mysqli_real_connect(): (HY000/2002): No such file or directory
mysqli_real_connect (): (HY000 / 2002): нет такого файла или каталога
а) Изменим там false на true
Теперь всё должно работать! Осталось всё запустить.
По умолчанию адрес доступа в phpmyadmin
Запуск
или также для mysql подойдет
Команды для перезапуска:
Посмотреть все сервисы:
Логи ошибок в веб-сервере на Mac OS
Если что-то пошло не так, можно посмотреть логи ошибок. Например, почему не открывается та или иная страница:
Ошибки
Ошибка при перезагрузке apache
а) Если там будет ошибка:
AH00544: httpd: bad group name stuff
Значит в конфигурации httpd.conf указан неверный пользователь. Как поправить смотрите в этой статье выше.
б) Также может быть:
httpd: Syntax error on line 183 of /usr/local/etc/httpd/httpd.conf: Cannot load /usr/local/opt/php/lib/httpd/modules/libphp7.so into server: dlopen(/usr/local/opt/php/lib/httpd/modules/libphp7.so, 10): Library not loaded: /usr/local/opt/icu4c/lib/libicui18n.64.dylib\n Referenced from: /usr/local/opt/php/lib/httpd/modules/libphp7.so\n Reason: image not found
Попробовать обновить homebrew:
Обновить php или установить новую версию php:
И еще раз перезагрузить сервисы
в) Если будет сообщать, что сервис httpd не запущен:
httpd not running, trying to start
Далее попробуем так:
Если покажет что-то вроде:
И снова запустим так:
г) Любые другие ошибки, в консоли будут подсказки.
Ошибка при импорте базы данных
phpMyAdmin — Ошибка
Incorrect format parameter
Надо увеличить лимиты:
Которые устанавливаются в файл php.ini:
Версия php может быть любой другой, которая была установлена.
Снова перезагрузим все сервисы
После этого (не всегда), чтобы сразу заработало нужно выйти и заново зайти в phpMyAdmin.
Читайте также
Если вам пригодилась информация, вы можете поблагодарить автора сайта символическим пожертвованием:
Комментарии к статье “ Устанавливаем веб-сервер на Mac OS ” (4)
Добрый день, как связаться с автором статьи?
Что именно вас интересует?
У меня на моменте:
«Войдем внутрь MySQL»
И
«Должны зайти на сервер»
Никаких ошибок не выдает, кроме синтаксической и файла по адресу «/usr/local/etc/phpmyadmin.config.inc.php
» нет.
Проблема может быть в кавычке. Посмотрите совет в конце этой статьи.
Добавить комментарий Отменить ответ
Если возникнут вопросы пишите на электронную почту.
Запуск WEB сервера под MAC OS x
Как уже писал в прошлом посте, что решил в новогодние каникулы погонять свой мак максимально возможно и поставить все что было у меня на винде и вот встал вопрос об установке Веб сервера под Мак и данная статья будет пошаговой инструкцией как запустить встроенный веб сервер Apache с подключением PHP и MySQL.
т.к. я буду 100% натыкаться на какие нибудь «вилы» то эта статья будет постоянно дополняться + буду ждать комментарии от Вас
Давайте для удобства разобьем эту статью на подпункты:
[contents]
Включаем встроенный WEB Server Apache
Приведенный материал является универсальным и будет полезен пользователям любых операционных систем.
Включить веб-сервер можно в настройках: Системные настройки > Общий доступ > включить службу Общий веб-доступ.
Если набрать в адресной строке браузера http://localhost/ , то сервер вернет страницу с текстом «It works!».
Либо можно запустить Apache через командную строку Терминала набрав след команду:
sudo apachectl start
Конфигурация Apache
Для конфигурации Apache необходимо открыть файл /etc/apache2/httpd.conf :
sudo nano /etc/apache2/httpd.conf
Раскомментируем ServerName и приведем ее к такому виду:
ServerName localhost
Далее подключаем PHP (необходимо раскомментировать строку):
LoadModule php5_module libexec/httpd/libphp5.so
Далее изменим каталог где у нас будут лежать тестовые сайты После этих изменений корневым каталогом будет папка Сайты (Sites), находящаяся в домашнем каталоге пользователя.
DocumentRoot «/Library/WebServer/Documents»
DocumentRoot «/Users/имя_пользователя/Sites»
Аналогично заменим прежний путь в строке 195:
Далее в строке 230 пропишем какие типы файлов и в какой последовательности должен обрабатывать Apache:
DirectoryIndex index.php index.html
В строке 469, чтобы подключить файл в котором будем записывать виртуальные хосты:
Include /private/etc/apache2/extra/httpd-vhosts.conf
Сохраняем все изменения в файле httpd.conf и перезапускаем Apache.
sudo apachectl restart
После этого переходим в браузере по адресу http://localhost/ , загрузится стартовая страница из папки сайты с приветствием «Ваш веб-сайт».
Теперь проверим работоспособность PHP, для этого создадим в нашем каталоге Sites тестовый PHP-скрипт:
/Sites/index.php
sudo nano
и напишем сценарий, который покажет конфигурацию PHP:
Сохраняем файл index.php и вновь переходим по адресу http://localhost/ , должна открыться страница с информацией о версии PHP. Если по прежнему загружается страница приветствия, необходимо проверить настройки Apache (строка 230).
(дополнение от 4.01.2016)
Обязательно нужно еще проделать операцию с конфигурационным файлом php.ini он находится в папке /etc/php.ini.defaults , его необходимо переименовать в php.ini :
sudo cp /etc/php.ini.default /etc/php.ini
Конфигурация виртуальных хостов
Все проекты будут размещаться в каталоге пользователя Сайты ( /Users/имя_пользователя/Sites/ ). Создадим в этом каталоге новую папку с названием test , а в ней файл index.php с тестовым скриптом. Локальный сайт будет открываться по адресу http://test/ . Переходим к командной строке и вводим следующие команды:
mkdir
/Sites/test
touch index.php
nano index.php
и добавим сценарий:
Теперь займемся конфигурацией виртуальных хостов. Для начала откроем файл /etc/hosts и добавим в исключения адрес локального сайта ( http://test/ ). Переходим к командной строке:
sudo nano /etc/hosts
и добавляем строчку:
127.0.0.1 test
Добавим записи с конфигурацией нового виртуального хоста: