Apache mac os настройка

Обновлено: 02.07.2024

Этот учебный курс содержит инструкции по настройке PHP для пакета MAMP (M*acintosh, A*pache, *M*ySQL, *P*HP), который включает в себя веб-сервер Apache, сервер баз данных MySQL и модуль PHP. MAMP - среда разработки на PHP для Mac, полностью совместимая с NetBeans IDE.

Xdebug - расширение для PHP, используемое для предоставления ценной информации для отладки сценариев PHP. Отладчик NetBeans работает поверх расширения Xdebug, что обеспечивает эффективный механизм отладки для среды разработки.

Для работы с этим учебным курсом требуются программное обеспечение и ресурсы, перечисленные ниже.

Пакет загрузки PHP

В пакет MAMP входят веб-сервер Apache, модуль PHP и база данных MySQL. Mac OS X 10.5 и более поздние версии включают в себя базу данных MySQL и сервера Apache с поддержкой PHP. Разумеется, встроенную базу данных и сервер можно настроить и в IDE, но универсальный пакет MAMP представляет собой более удобное и простое решение.

Установка и настройка MAMP

Загрузите последнюю версию MAMP.

Распакуйте загруженный архив и запустите файл .dmg . Когда отобразится экран установщика, переместите MAMP в папку /Applications .

mamp install

Figure 1. На экране установщика MAMP отображаются компоненты MAMP и MAMP-Pro

Перейдите в папку /Applications/MAMP и дважды щелкните файл MAMP.app . Открывается панель управления MAMP.

Также можно установить виджет панели управления MAMP, следуя инструкциям в файле MAMP/README.rtf . С помощью этого виджета можно будет запускать и останавливать серверы.

mamp control panel

Нажмите "Предпочтения". На открывшейся панели "Предпочтения" перейдите на вкладку "Порты".

Выберите параметр "Значения умолчанию" для портов Apache и MySQL. Для порта Apache устанавливается значение 80, а для порта MySQL - 3306.

mamp control panel preferences ports

База MySQL, включенная в состав пакета MAMP, по умолчанию находится в каталоге /Applications/MAMP/db/MySQL . В качестве имени пользователя и пароля по умолчанию используется значение root . Эти данные можно проверить на странице приветствия MAMP, которая открывается в браузере при запуске MAMP.

IDE взаимодействует с базами данных в окне "Службы" (⌘-5). Базу данных MySQL для MAMP можно зарегистрировать следующим образом:

Щелкните правой кнопкой мыши узел "Базы данных > MySQL Server" и выберите "Свойства". Отображается диалоговое окно "Свойства MySQL Server". В этом диалоговом окне можно настроить все параметры MySQL.

Введите имя хоста для сервера баз данных, номер порта, имя пользователя и пароль. Все эти данные отображаются на странице приветствия MAMP при запуске сервера и базы данных. При локальном запуске MAMP по умолчанию используются следующие параметры:

*Имя хоста для сервера: * localhost

*Номер порта сервера: * 3306

*Имя администратора: * root

*Пароль администратора: * root

mysql basic properties

Перейдите на вкладку "Администрирование", где можно настроить параметры запуска и останова сервера баз данных в IDE. Сценарии оболочки MAMP хранятся в папке bin . Здесь находятся сценарии для запуска и останова серверов. Вы можете выбрать путь к средствам администрирования и связать IDE с файлом MAMP.app , чтобы в дальнейшем запускать панель управления MAMP из IDE. Для этого введите путь /Applications/MAMP/MAMP.app . В качестве альтернативы можно использовать инструмент MySQL Workbench, предоставляющий интуитивный графический интерфейс для выполнения административных задач, таких как настройка и мониторинг сервера MySQL, управление пользователями и подключениями, создание резервных копий и т. д. Чтобы использовать инструмент MySQL Workbench, необходимо сначала загрузить и установить его, а затем ввести в диалоговом окне следующие параметры:

*Путь/URL средства администрирования: * /Applications/MySQL Tools/MySQLWorkbench.app (папка установки MySQL Workbench по умолчанию)

*Путь для команды запуска: * /Applications/MAMP/bin/startMysql.sh

*Путь для команды останова: * /Applications/MAMP/bin/stopMysql.sh

mysql admin props

Если в качестве инструмента администрирования сервера MySQL планируется использовать MySQL Workbench, необходимо указать сокет для подключения к базе данных MAMP. Запустите MySQL Workbench. В разделе "Администрирование сервера" на главной странице выберите "Новый экземпляр сервера".

mysql workbench home

Отображается диалоговое окно "Создать профиль нового экземпляра сервера". Выберите метод подключения "Локальный сокет/канал" и укажите путь к файлу сокета на вкладке "Параметры". По умолчанию сокет находится в папке /Applications/MAMP/tmp/mysql/mysql.sock .

socket path

Создание проектов PHP

Для создания проектов PHP в IDE с использованием ресурсов MAMP необходимо настроить IDE таким образом, чтобы она копировала ваши ресурсы в папку Apache htdocs . В этом случае при сохранении изменений в файлах будет автоматически обновляться исходный код развернутой версии.

Например, можно создать новый проект PHP с помощью мастера новых проектов (нажмите значок "Создать проект" на панели инструментов IDE ( ). На третьем экране мастера "Конфигурация запуска" выберите параметр "Копировать файлы из исходной папки в другое расположение" и укажите путь к папке htdocs .

new php project

IDE запоминает указанный путь и использует его в последующих проектах. Более подробные инструкции по созданию проектов PHP в NetBeans IDE см. в разделе Настройка проекта PHP.

Включение расширения Xdebug в MAMP

В пакет MAMP входит заранее скомпилированный файл xdebug.so . Чтобы использовать этот файл, необходимо включить его поддержку в файле MAMP php.ini . Расширение Xdebug несовместимо с Zend Optimizer, поэтому необходимо отключить Zend Optimizer в том же файле php.ini .

Чтобы включить расширение Xdebug в MAMP:

Откройте файл php.ini в редакторе. Этот файл находится в папке

Найдите раздел [Zend] и закомментируйте в нем все строки.

Найдите раздел [xdebug] и активируйте Xdebug (замените xxxxxxxx фактическим номером). Добавьте в конец файла php.ini следующий раздел (если он отсутствует).

Пояснения см. в разделе "Связанные настройки" документа Удаленная отладка Xdebug.

Обратите внимание, что на предыдущем этапе был указан удаленный порт Xdebug 9000. Этот порт отладчика используется в NetBeans по умолчанию. Чтобы проверить номер порта, выберите "NetBeans > Предпочтения" в главном меню, затем выберите PHP в окне "Параметры".

php options68

При необходимости здесь можно изменить порт отладчика.

Откройте панель управления MAMP и перейдите на вкладку "PHP". Снимите флажок для параметра Zend Optimizer.

mamp control panel preferences php

Запустите (или перезапустите) сервер Apache MAMP.

Отладка проектов PHP

Чтобы выполнить отладку проекта PHP в IDE, щелкните проект правой кнопкой мыши в окне "Проекты" и выберите "Отладка". Также, если проект выбран в окне "Проекты", можно нажать значок "Отладка проекта" ( ) на основной панели инструментов.

Если требуется временно приостановить отладчик на первой строке кода, включите соответствующий параметр в окне Параметры PHP.

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

debugger toolbar

Figure 7. Панель инструментов отладчика в приостановленном состоянии

Чтобы проверить, активен ли сеанс отладки PHP, также можно открыть окно "Сеансы". Выберите "Окно > Отладка > Сеансы" в главном меню.

debugger sessions win

См. также

Редактор PHP в NetBeans IDE 6.9-7.0. Экранная демонстрация поддержки нового редактора PHP.

Отладка исходного кода PHP В этом документе описан процесс отладки исходного кода в IDE с помощью Xdebug.

Создание приложения CRUD. Этот учебный курс, состоящий из 9 частей, включает в себя демонстрации и инструкции по созданию приложений CRUD с помощью редактора PHP в IDE.

Развертывание приложения PHP на удаленном веб-сервере. Этот документ содержит инструкции по развертыванию приложений PHP на удаленном сервере с хостинговой учетной записью.

mac os web server

Apple

Как уже писал в прошлом посте, что решил в новогодние каникулы погонять свой мак максимально возможно и поставить все что было у меня на винде и вот встал вопрос об установке Веб сервера под Мак и данная статья будет пошаговой инструкцией как запустить встроенный веб сервер Apache с подключением PHP и MySQL.

Давайте для удобства разобьем эту статью на подпункты:
[contents]

Включаем встроенный WEB Server Apache

mac os Apache

Приведенный материал является универсальным и будет полезен пользователям любых операционных систем.

Включить веб-сервер можно в настройках: Системные настройки > Общий доступ > включить службу Общий веб-доступ.

Либо можно запустить Apache через командную строку Терминала набрав след команду:

sudo apachectl start

Конфигурация Apache

Раскомментируем ServerName и приведем ее к такому виду:
ServerName localhost
Далее подключаем PHP (необходимо раскомментировать строку):

Далее изменим каталог где у нас будут лежать тестовые сайты После этих изменений корневым каталогом будет папка Сайты (Sites), находящаяся в домашнем каталоге пользователя.

DocumentRoot "/Library/WebServer/Documents"

DocumentRoot "/Users/имя_пользователя/Sites"

Аналогично заменим прежний путь в строке 195:

<Directory "/Library/WebServer/Documents">

<Directory "/Users/имя_пользователя/Sites">

Далее в строке 230 пропишем какие типы файлов и в какой последовательности должен обрабатывать Apache:

DirectoryIndex index.php index.html

В строке 469, чтобы подключить файл в котором будем записывать виртуальные хосты:

sudo apachectl restart

Теперь проверим работоспособность PHP, для этого создадим в нашем каталоге Sites тестовый PHP-скрипт:

/Sites/index.php
sudo nano

и напишем сценарий, который покажет конфигурацию PHP:

<?php
phpinfo();
?>

(дополнение от 4.01.2016)

Обязательно нужно еще проделать операцию с конфигурационным файлом php.ini он находится в папке /etc/php.ini.defaults , его необходимо переименовать в php.ini :

sudo cp /etc/php.ini.default /etc/php.ini

Конфигурация виртуальных хостов

apache virtual host example

/Sites/test
touch index.php
nano index.php

и добавим сценарий:

<?php
phpinfo();
?>

sudo nano /etc/hosts

и добавляем строчку:

127.0.0.1 test

Добавим записи с конфигурацией нового виртуального хоста:

И в конец файла добавляем записи:

Сохраняем изменения и перезапускаем Apache

sudo apachectl restart

Проверка и тестирование результата

 тестирование веб сервера

Данная инструкция писалась пошагово, когда я сам настраивал на своем Макбук Веб сервер. Если Вы все делаете в точности по инструкции, то у Вас точно на все 100% получится настроить web server.

Эта статья является переводом статьи How to Set up Apache in macOS Sierra 10.12, и я размещаю ее здесь в первую очередь для себя, так как часто приходится к ней прибегать для настройки/перенастройки Apache в Sierra. Возможно, кому-то этот русскоязычный перевод облегчит понимание, и я буду рад что смог чем-то помочь.

macOS Sierra поставляется с веб-сервером Apache версии 2.4.23. Настройка Apache будет состоять из трех этапов:

0. Terminal, без которого никуда

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

Терминал находится по адресу:

Запустите его. Приглашение командной строки будет иметь следующий вид:

Сначала будет указано имя компьютера, потом :

потом ваше короткое имя пользователя и знак $ в конце.

1.1. Создаем папку Sites и папки для проектов

Папка Sites будет выступать в роли Document Root для Apache, и в то же время удобно располагаться в вашей домашней папке, обеспечивая беспрепятственный доступ к своему содержимому. Отметим, что папка Sites уже была предустановлена во всех ранних системах Mac OS X и исчезла в OS X 10.7 Lion. Равно как и галочка “web sharing” в System Preferences -> Sharing, которая позволяла запускать/останавливать Apache. Видимо в Apple посчитали, что среднестатистическому пользователю это не нужно, а кому нужно, разберется и без графического интерфейса. Но как только вы создадите папку Sites, сразу станет понятно что Finder ожидает ее возрождения и у него уже есть заготовленная иконка для этой папки с логотипом Safari.

Создать папку можно с помощью Finder, но мы сделаем это через Terminal, из учебных соображений. Для создания директорий есть команда mkdir (сокращение от make directory). После mkdir должен быть указан путь в файловой системе к создаваемой папке. Символом тильда (

) обозначается ваш домашний каталог (это сокращение принято во всех Unix системах). Таким образом, следующая команда позволит создать папку Sites внутри вашей домашней директории:

Как узнать что команда сработала и папка создалась? Выполните:

Команда ls (сокращенно от list), показывает содержимое указанной директории, в данном случае она покажет содержимое нашей домашней директории так как в качестве пути стоит тильда

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

Теперь создадим две папки для сайтов внутри Sites. Используем для этого mkdir:

С помощью ls убедитесь что папки созданы:

1.2. Создадим простой HTML файл

Можно, конечно, создать simple-text файл в TextEdit, и наполнить его HTML кодом, но мы по-прежнему будем использовать Терминал. Создавать файл удобно командой touch. Она либо создает новый пустой файл либо меняет дату изменения на текущую на указанном файле либо директории. Это удобно запомнить, так как touch == потрогать.

От пустого index.html толку мало, нужно наполнить его HTML разметкой, и для этого мы воспользуемся редактором nano:

Откроется текстовый редактор прямо в окне Терминала. Внизу будут перечислены команды-подсказки. Символ ^ стоящий перед буквой означает что чтобы выполнить эту команду, нужно нажать клавишу Ctrl и соответствующую букву.

Добавьте следующие строки в файл

Закройте и сохраните файл используя клавишное сочетание Ctrl+X (выйти) потом Y (да, сохранить) и Enter.

А теперь откройте свежескопированный файл в nano:

Измените его содержимое, чтобы оно выглядело примерно так:

Теперь, когда у нас есть две папки с тестовыми файлами, можно переключиться на настройку Apache.

1.3. Настраиваем Apache

1.3.1. Конфигурационный файл Apache

Теперь нам нужно переместиться в директорию /etc/apache2/users и создать там .conf-файл. Apache будет его искать именно там. Переместитесь в эту папку командой cd:

Еще раз проверьте что вместо username вы подставили свое реальное имя пользователя!

Откроется новый пустой текстовый файл в редакторе nano, в который нужно добавить следующее содержимое:

И снова замените username на ваше имя пользователя. Закройте Ctrl+X редактор, укажите сохранить (Y) документ, и нажмите Enter для подтверждения.

Теперь подкорректируем права доступа, чтобы Apache мог прочитать этот новосозданный файл. Для изменения прав доступа воспользуйтесь командой:

Теперь, когда конфиг-файл создан, и у него установлены корректные права доступа, включим ключевые модули вебсервера Apache.

На следующем шаге нам нужно переместиться назад или вверх на один уровень, в папку /etc/apache2. Сейчас, вы наиболее вероятно находитесь в /etc/apache2/users (если не переходили никуда с прошлого шага). Чтобы переместиться на уровень вверх (перейти в родительскую папку), используйте команду cd и две точки вместо указания имени папки:

Перешли? Проверьте, что вы находитесь в правильном месте командой pwd (сокращение от print working directory):

Команда должна показать: /etc/apache2.

Как и в предыдущем случае, обязательно создадим резервную копию файла перед изменением:

1.3.4. Перезагрузка Apache

Внеся указанные выше изменения в:

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

После перезапуска Apache можно проверить результат с помощью браузера (Safari, Firefox, или что вы там используете).

1.3.5. Просмотр локальных веб-сайтов

username, только не забудьте поменять username на свое имя пользователя. Если все настроено верно, вы увидите содержимое папки Sites, среди которого будут созданные нами ранее

/Sites/bar. Если щелкнуть на foo или bar, откроется заготовленная нами веб-страница которая выводит Hello World. Apache видит наличие html-файла по умолчанию, а именно index.html и при переходе в папку автоматически загружает index.html.

На этом первая часть настройки Apache завершена, и теперь статические веб-сайты размещенные в папке Sites или во вложенных папках будут доступны к просмотру через браузер.

username/bar, можно настроить локальные доменные имена для каждого проекта. В таком случае сайт, размещенный в

/Sites/foo будет доступен по адресу foo.localhost, а сайт из папки

/Sites/bar будет доступен соответственно по bar.localhost. Так удобнее, правда?

Обратите внимание: используя VirtualHosts, нам придется отказаться от индексированного представления на localhost, и нужно будет отредактировать hosts файл вашего Mac, добавив в него уникальные имена хостов для каждого проекта.

Будьте внимательны редактируя файл hosts. Добавьте ваши записи в низ файла и не изменяйте первых три строчки!

Откройте файл /etc/hosts с помощью nano:

Если вы ранее не вносили никаких правок в этот файл, он должен выглядеть так:

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

Сохраните и закройте /etc/hosts.

Прежде чем мы сможем проверить что мы понастраивали, нужно перезапустить Apache:

После перезапуска Apache, заходим на foo.localhost и bar.localhost веб-браузером, оба сайта должны выдавать соответствующий index.html.

Найдите и раскомментируйте в этом файле строку:

3.1. Интерпретация PHP кода внутри HTML файлов

Добавьте следующий блок кода в самый верх файла:

И после всех этих изменений перезапустим Apache:

3.2. Проверка работы PHP модуля

А теперь проверим, все ли у нас корректно работает. Для начала создадим обычный .php файл:

Поместите в него php-код следующего содержания или любой другой php-код:

Также желательно протестировать как будет интерпретироваться PHP код, вставленный в HTML документ. Открываем на редактирование index.html:

Добавим несколько строк PHP кода в самое начало файла, этот код будет задавать переменную $day, присваивая ей текущее значение дня недели. И потом в теле HTML документа мы выведем значение переменной $day:

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

На этом настройка Apache завершена, и ваш компьютер теперь представляет собой практически полноценный веб-сервер.

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

Конечно, немаловажный вопрос о версии PHP. К сожалению, в Sierra используется уже немного подустаревший и в плане функционала и в плане производительности PHP 5.6.3. В High Sierra, насколько мне известно уже предустанавливается PHP 7.1. В любом случае, обновление до 7.2 крайне желательно, но эту тему мы рассмотрим уже в другой статье.


CatalinaMAC OSX
Предварительные условие для инструкции:

После выполнения предварительных условий начнем с установки некоторых зависимостей для Catalina:

Последняя версия MacOS 10.15 Catalina поставляется с предварительно установленной версией Apache 2.4, однако использовать эту версию вместе с Homebrew не правильно, поскольку Apple удалила некоторые необходимые скрипты в этом выпуске. Решение состоит в том, чтобы установить Apache 2.4 через Homebrew, а затем настроить его для работы на стандартных портах (80/443).

Теперь установим новую версию Apache которая поставляется по средствам Brew:

Теперь выполним команду которая позволит нашему серверу запускаться в автоматическом режиме:

Конфигурация Apache.

Теперь, когда у нас есть работающий веб-сервер, нам нужно будет внести некоторые изменения в конфигурацию, чтобы он работал лучше в качестве локального сервера разработки.

В последней версии Brew вы должны вручную установить порт прослушивания по умолчанию от 8080 до 80, поэтому нам нужно будет отредактировать файл конфигурации Apache

1. Найдите в файле Listen 8080 и измените на Listen 80;

Теперь нам нужно создать папку Sites в корне домашнего каталога вашего пользователя. Это можно сделать сделать это в терминале или в Finder. В этой новой папке «Sites» vs мы создадим простой файл index.html и напишем там что-то что будет показывать, что это именно папака пользователя, например: <h1> My User Sites Folder </ h1>.

После этого перезапускаем Apache командой:

Apache MacOS Catalina in user home folder

Если вы видите это, значит вы все сделали правильно и теперь Apache по умолчанию смотрит в папку Sites вашего пользователя.
На этом первичную настройку Apache можно считать законченой.

Читайте также: