Как установить HTTP-сервер Apache на MacOS

Последние версии macOS поставляются с предустановленным Apache 2.4. Но управлять им через homebrew сложно, поскольку Apple удалила некоторые необходимые скрипты из последних версий macOS. Это руководство поможет вам удалить установленный по умолчанию Apache из системы и установить Homebrew-версию Apache на вашу систему.

Предварительные требования

Перед началом установки сервера Apache (httpd) с помощью этого руководства вы должны иметь следующие предварительные условия.

  • Терминал: У вас должен быть доступ к Mac Terminal и небольшие знания о работе с терминальным приложением. Войдите в систему Mac и откройте терминал
  • Homebrew: Это популярный менеджер пакетов для операционных систем Mac. Он полезен для установки большинства программ с открытым исходным кодом, таких как Node. Руководство по установке Homebrew

Шаг 1 - Установка Apache на macOS

Мы будем использовать HTTP-сервер Homebrew. Поэтому убедитесь, что вы удалили встроенный сервер Apache, установленный в вашей системе. Вы можете сделать это, выполнив нижеупомянутую команду в терминале:

sudo apachectl stop 
sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist 

Теперь используйте утилиту командной строки brew для установки последней версии HTTP-сервера Apache на вашу macOS.

brew install httpd 
Установка Apache HTTP Server на macOS
Установка Apache HTTP Server на macOS

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

sudo brew services start httpd 

Вы успешно установили веб-сервер Apache через Homebrew и настроили его на автоматический запуск с привилегированной учетной записью.

Вы можете попробовать зайти на ваш сервер в браузере, указав ему на http://localhost:8080, вы должны увидеть простой заголовок с надписью "It works!".

Страница Apache по умолчанию на macOS
Страница Apache по умолчанию на macOS

Шаг 2 - Настройка HTTP-сервера Apache

Веб-сервер Apache уже запущен на вашей системе macOS. Теперь вам нужно внести некоторые изменения в конфигурацию в соответствии с вашей локальной средой разработки. Программа установки создает конфигурационный файл /use/local/etc/httpd/httpd.conf, который необходимо отредактировать в текстовом редакторе и внести следующие изменения.

Установите порт Apache: Версия httpd в Homebrew использует порт 8080. Вы должны вручную изменить порт прослушивания с установленного по умолчанию 8080 на стандартный порт 80.

Find the line with  
Listen 8080

and change it to  
Listen 80

Измените корневую папку: Теперь настройте корень документа для Apache. По умолчанию корень документа установлен в "/usr/local/var/www". Вы можете оставить корень документа без изменений и поместить файлы вашего сайта в этот корень документа. Но я предполагаю, что вы хотите изменить корень документа и установить его в свой домашний каталог.
Измените этот параметр так, чтобы он указывал на каталог пользователя, где your_user - имя вашей учетной записи пользователя:

 DocumentRoot /Users/rahul/Sites

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

В этом же блоке вы найдете опцию AllowOverride, установите ее в значение all, чтобы разрешить использование файла .htaccess в Apache.

<Directory /Users/rahul/Sites>
   [...]
   #
   # AllowOverride controls what directives may be placed in .htaccess files.
   # It can be "All", "None", or any combination of the keywords:
   #   AllowOverride FileInfo AuthConfig Limit
   #
   AllowOverride all 
</Directory>

Включение модуля Rewrite: Также необходимо включить модуль mod_rewrite, удалив ведущий символ # из следующей строки. Найдите строку и обновите ее. Это позволит включить перезапись URL на Apache.

 LoadModule rewrite_module lib/httpd/modules/mod_rewrite.so

Настройка пользователя и группы для Apache: Поскольку вы настроили корень документа Apache на ваш домашний каталог. Вы столкнетесь с проблемами с разрешениями, потому что по умолчанию Apache запускается как демон пользователя и демон группы (возможно, имя_пользователя и группа - _www). Для персональных систем вы можете изменить их на соответствующие вашей учетной записи пользователя (замените имя_пользователя на ваше настоящее имя пользователя), с группой staff.

  User user_name
  Group staff

Шаг 3 - Создание тестовой HTML-страницы на Apache

Давайте создадим папку Sites в вашем домашнем каталоге и создадим образец файла index.html для тестирования.

mkdir ~/Sites 
echo "Welcome" > ~/Sites/index.html 

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

sudo apachectl -k restart 

Теперь направьте браузер на http://localhost, где должен отобразиться только что созданный index.html. Все готово.

Шаг 4 - Управление службой Apache

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

Остановить сервер Apache:

sudo apachectl stop 

Запустить сервер Apache:

sudo apachectl start 

Перезапустить сервер Apache:

sudo apachectl restart 

Заключение

Apache - это веб-сервер, который предоставляет HTML-контент пользователям Интернета. Версия Apache для Homebrew по умолчанию работает на порту 8080, поэтому мы также включили шаги по изменению порта. Вы также можете изменить корень документа, чтобы использовать другое местоположение, отличное от того, которое используется по умолчанию. Это руководство помогло вам установить и настроить веб-сервер Apache в системе macOS.

Написать комментарий