Макрос Apache имеет имя, некоторые переменные и строки кодов конфигурации Apache. Если вы хотите использовать макрос, вы вызываете его по имени макроса, передаете значения для каждой переменной, переменные заменяются значением в макросе, а затем макрос раскрывается. Это делает настройку очень простой и модульной.
В этой статье я покажу вам, как использовать макрос для управления Apache 2 VirtualHost. Итак, приступим.
Настройка VirtualHost:
В этой статье я собираюсь реализовать конфигурацию VirtualHost, как показано на рис. 1, с помощью макроса. У меня будет 3 пользователя боб, Алиса а также Линда. боб разместит свой сайт www.example1.ком на сервере Apache с IP-адресом 192.168.21 год.166. Так же Алиса а также Линда будут размещать свои сайты www.пример2.ком а также www.example3.ком соответственно на том же сервере Apache.
Рис.1: VirtualHost на основе имени в Apache 2
Эта статья является расширением моей статьи о настройке Apache VirtualHost в Ubuntu 18.04 LTS, которую вы можете прочитать на Как настроить Apache VirtualHost в Ubuntu 18.04 LTS (ссылка на эту статью).
Требования:
Если вы новичок в настройке Apache 2 и хотите все изучить шаг за шагом, прочтите мою статью Как настроить Apache VirtualHost в Ubuntu 18.04 LTS (ссылка на эту статью) первый. В этой статье вам необходимо следовать разделам, указанным ниже:
- Установка веб-сервера Apache 2
- Настройка DNS
- Структуры каталогов
- Создание пользователей
После того, как вы выполните эти разделы из справочной статьи, вы сможете перейти к следующим разделам этой статьи.
Включение модуля mod_macro Apache 2:
По умолчанию, mod_macro модуль не включен на веб-сервере Apache 2 в Ubuntu 18.04 LTS. Но модуль есть, и вы можете легко включить его с помощью a2enmod команда.
Включить mod_macro модуль, выполните следующую команду:
макрос $ sudo a2enmodmod_macro должен быть включен.
Создание макроса для VirtualHost:
Каталог по умолчанию, в который вы должны поместить файлы макросов в Ubuntu 18.04 LTS - это / и т.д. / apache2 / conf-доступный /
.
Сначала перейдите в каталог / и т.д. / apache2 / conf-доступный /
следующим образом:
Теперь создайте новый файл макроса vhost-macro.conf
с помощью следующей команды:
Текстовый редактор должен быть открыт.
Теперь введите следующие строки:
ServerName $ домен
ServerAlias www.$ домен
DocumentRoot "/ www / $ domain / www / public_html"
Параметры -FollowSymLinks + MultiViews + Indexes
AllowOverride все
Требовать все предоставлено
ErrorLog "/ www / $ domain / www / logs / error.бревно"
CustomLog "/ www / $ domain / www / logs / access.журнал "комбинированный
Наконец, макрос выглядит следующим образом. Теперь сохраните файл, нажав
Использование макроса для каждого VirtualHost:
В предыдущей статье я создал файлы конфигурации VirtualHost для боб (www.example1.ком.conf), Алиса (www.пример2.ком.conf) и Линда (www.example3.ком.conf).
Теперь пора заменить его макросом.
Сначала перейдите в каталог сайтов Apache 2 по умолчанию / и т.д. / apache2 / сайты-доступные
следующим образом:
Итак, откройте файл конфигурации VirtualHost для боб (www.example1.ком.conf) следующим образом:
$ sudo nano www.example1.ком.conf
Это много строк. Что ж, удали все эти строчки. Нам они больше не нужны.
Просто введите следующую строку и сохраните файл, нажав
Теперь сделайте то же самое для Алиса (www.пример2.ком.conf).
$ sudo nano www.пример2.ком.conf
Удалите все строки, введите следующую строку и сохраните файл.
Используйте VHost example2.ком
Опять же, сделайте то же самое для Линда (www.example3.ком.conf).
$ sudo nano www.example3.ком.conf
Удалите все строки, введите следующую строку и сохраните файл.
Используйте VHost example3.комВключение макроса:
Теперь вам нужно включить макрос vhost-macro.conf что вы только что создали.
Для этого выполните следующую команду:
$ sudo a2enconf vhost-macroМакрос vhost-macro включен.
Теперь перезапустите службу Apache 2 следующим образом:
$ sudo systemctl перезапустить apache2
Тестирование VirtualHosts на основе макросов:
Теперь попробуйте получить доступ к веб-сайтам www.example1.com, www.пример2.com, www.example3.ком.
Как видите, все эти веб-сайты работают должным образом.
Вы видели, насколько важны макросы?? Раньше нам приходилось помещать много строк кода в конфигурационный файл VirtualHost. Но теперь для настройки VirtualHost достаточно всего одной строчки кода. Это упрощает настройку VirtualHost.
Итак, вот как вы используете макросы Apache 2 для простой настройки VirtualHost в Ubuntu 18.04 LTS. Спасибо, что прочитали эту статью.