Apache настройка виртуальных хостов ubuntu: Как настроить виртуальные хосты в Apache на Ubuntu 18.04/20.04

Содержание

Как настроить виртуальные хосты в Apache на Ubuntu 18.04/20.04

Каждый владелец VPS сталкивается с вопросом, как разместить несколько сайтов на одном сервере с одним IP-адресом. Если вы используете в качестве веб-сервера Apache, виртуальные хосты (virtual hosts) — верное решение для разделения ресурсов и отдельной конфигурации для каждого сайта.

Предварительная настройка

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

Создание пользователя

По умолчанию после создания сервера для доступа к нему создаётся root пользователь. В целях безопасности не рекомендуем работать под суперюзером.

Чтобы создать пользователя, введите команду:

adduser userName

Где UserName — имя нового пользователя.

Система попросит ввести пароль для нового пользователя и дополнительную информацию:

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

usermod -aG sudo UserName

Где UserName — имя созданного ранее пользователя.

Готово, новый пользователь создан. Завершите SSH-сеанс под root и подключитесь к серверу под новым пользователем.

Установка Ubuntu Apache

Чтобы выполнить действия ниже, у вас должен быть установлен Apache. Для полноценной работы сайта рекомендуем установить LAMP (Linux Apache MySQL PHP). Это минимальный набор ПО, который чаще всего используется для размещения и запуска сайта. Как установить LAMP, вы можете узнать в инструкции.

Подготовка доменов

Ваши домены должны быть привязаны к облачному серверу. Сделать это вы можете по инструкции.

Обратите внимание

В данной инструкции будут приведены примеры с доменами faq-reg.ru и support-faq.ru. В тех местах, где они будут встречаться, измените домены на свои.

Подготовка каталогов

Подготовим структуру каталогов. Рабочая директория Apache — /var/www. В данной директории мы будем создавать отдельные каталоги для каждого домена (виртуального хоста).

Чтобы создать каталоги, выполните команды:

sudo mkdir -p /var/www/faq-reg.ru/
sudo mkdir -p /var/www/support-faq.ru/

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

sudo chmod -R 755 /var/www
sudo chown -R $USER:$USER /var/www/faq-reg.ru/
sudo chown -R $USER:$USER /var/www/support-faq.ru/

Готово, структура каталогов и права доступа настроены. Далее подготовим демостраницы.

Создание демостраниц

Перед тем как настроить конфигурационный файл, для удобной проверки финального результата мы создадим демостраницу для каждого виртуальная хоста. В каждую папку мы поместим файл index.html, в котором будет строка с именем домена.

Для faq-reg.ru:

echo "<h2>faq-reg.ru</h2>" > /var/www/faq-reg.ru/index.html

Для support-faq. ru:

echo "<h2>support-faq.ru</h2>" > /var/www/support-faq.ru/index.html

Не забудьте заменить доменные имена на ваши.

Готово, теперь после настройки виртуальных хостов мы сможем проверить корректность их работы.

Создание конфигурационных файлов и настройка

Файл конфигурации Ubuntu Apache virtual hosts отвечает за обработку запросов к разным доменам. У Apache существует дефолтный файл конфигурации, который можно использовать в качестве шаблона. Его название может отличаться в зависимости от настроек сервера. В качестве примера мы обозначим название конфига как 000-default.conf. Для каждого виртуального хоста необходимо будет скопировать его, задать произвольное имя (рекомендуем использовать имя домена) и произвести определённые настройки. Обязательное условие — соблюдение расширения файла: .conf

Создание конфига для faq-reg.ru

  1. 1.

    Скопируйте шаблон конфига для первого домена с помощью команды:

    sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/faq-reg.ru.conf

    Где 000-default.conf — название конфигурационного файла по умолчанию.

  2. 2.

    Откройте созданный файл командой:

    sudo nano /etc/apache2/sites-available/faq-reg.ru.conf
  3. 3.

    В файле присутствует секция VirtualHost для обработки запросов на 80 порт (порт для HTTP-запросов). Заполните оставшиеся поля:

    • ServerAdmin — укажите электронный адрес администратора;
    • ServerName — укажите домен, для которого вы создаёте конфигурационный файл;
    • ServerAlias — раскомментируйте эту строку: удалите решётку в начале строки.
      В ней укажите псевдоним домена. Часто используется вид www.domain.ru;
    • DocumentRoot — укажите каталог домена, который вы создали на этапе подготовки;
    • ErrorLog и CustomLog — упомяните домен в названии файла. Так вы сможете быстрее идентифицировать файлы логов;
    • Directory — ещё раз укажите каталог домена, который вы создали на этапе подготовки.

    Затем сохраните изменения в файле и закройте его:

  4. 4.

    Настройка виртуального хоста для первого домена завершена. Скопируйте этот файл для второго домена с помощью команды:

    sudo cp /etc/apache2/sites-available/faq-reg.ru.conf /etc/apache2/sites-available/support-faq.ru.conf

    Не забудьте изменить faq-reg.ru.conf и 

    support-faq.ru.conf на имена ваших доменов.

  5. org/HowToStep»> 5.

    Откройте файл для редактирования:

    sudo nano /etc/apache2/sites-available/support-faq.ru.conf
  6. 6.

    Заполните поля:

    • ServerAdmin — укажите электронный адрес администратора;
    • ServerName — укажите домен, для которого вы создаёте конфигурационный файл;
    • ServerAlias — раскомментируйте эту строку: удалите решётку в начале строки. В ней укажите псевдоним домена. Часто используется вид www.domain.ru;
    • DocumentRoot — укажите каталог домена, который вы создали на этапе подготовки;
    • ErrorLog
      и CustomLog — упомяните домен в названии файла. Так вы сможете быстрее идентифицировать файлы логов;
    • Directory — ещё раз укажите каталог домена, который вы создали на этапе подготовки.

    Затем сохраните изменения и закройте файл:

  7. org/HowToStep»> 7.

    Деактивируйте конфиг по умолчанию командой:

    sudo a2dissite 000-default.conf

    И активируйте созданные конфиги:

    sudo a2ensite faq-reg.ru.conf
    sudo a2ensite support-faq.ru.conf
  8. 8.

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

    sudo service apache2 restart

Готово, создание и настройка виртуальных хостов завершена. Далее можем проверить результат.

Проверка работы виртуальных хостов

Если вы заранее привязали ваши домены к серверу и делегирование уже произошло, при переходе по домену должна открыться страница, которую мы создали на этапе «Создание демостраниц».

Если с момента изменения DNS прошло менее 24 часов и домен ещё не делегирован, увидеть результат вы можете, настроив локальные хосты в файле hosts. Подробнее в инструкции.

При переходе по домену faq-reg. ru:

При переходе по домену support-faq.ru:

Готово, файл index.html можно удалить. Далее вы можете загрузить файлы сайта в созданные директории.

Помогла ли вам статья?

Да

раз уже помогла

Как установить Apache на Ubuntu 20.04 и разместить веб-сайт

Содержание

  1. Установка Apache2 в Ubuntu 20.04
  2. Проверка Состояния Сервера Apache2 в Ubuntu 20.04
  3. Протестируйте установленный веб-сервер Apache2
  4. Настройка виртуальных хостов Apache2 в Ubuntu
  5. Создание виртуального хоста
  6. Создать корневой каталог документа
  7. Создание индексного файла сайта
  8. Измените конфигурацию виртуального хоста
  9. Включите виртуальный хост Apache2
  10. Основные команды для управления HTTP-сервером Apache
  11. Помощники Apache2
  12. Базовая конфигурация Apache2 и файлы журналов
  13. Конфигурационные файлы Apache2
  14. Файлы журналов Apache2
  15. Заключение

Apache — это программное обеспечение бесплатного веб-сервера, с открытым исходным кодом, разработан Apache Software Foundation. Официально он называется Apache HTTP Server. Apache является одним из самых старых, кросс-платформенных веб-серверов.

В этой инструкции мы установим Apache версии 2 (Apache2) на Ubuntu 20.04. Кроме того, мы настроим виртуальные хосты таким образом, чтобы на одном сервере могли размещаться несколько веб-сайтов.

Установка Apache2 в Ubuntu 20.04

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

$ sudo apt update

Во — вторых, выполните следующую команду, чтобы установить Apache версии 2 из репозитория пакетов Ubuntu.

$ sudo apt install apache2

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

После успешной установки Apache2 выполните следующую команду для просмотра версии.

$ apache2 -v

Проверка версии сервера Apache

Проверка Состояния Сервера Apache2 в Ubuntu 20.

04

Далее следует проверить состояние сервера Apache2, для этого выполните следующую команду.

$ sudo systemctl status apache2

Проверка состояния сервера Apache

По умолчанию служба Apache2 должна быть активна (запущена). Если нет, запустите службу следующей командой.

$ sudo systemctl start apache2

Протестируйте установленный веб-сервер Apache2

Последний шаг — это тестирование веб-сервера Apache2. Откройте веб-браузер и введите IP — адрес вашего сервера Ubuntu. Или введите localhost, если вы локально подключены к серверу.

Вы должны увидеть страницу Apache2 Ubuntu default page, как показано на рисунке ниже.

Страница Apache2 Ubuntu по умолчанию

Настройка виртуальных хостов Apache2 в Ubuntu

Виртуальные хосты позволяют размещать более одного веб-сайта на одном сервере Apache2. В Nginx это называется серверными блоками.

По умолчанию Apache2 поставляется с одним виртуальным хостом, а его конфигурационная информация хранится в файле /etc/apache2/sites-enabled/000-default.conf. Кроме того, корень веб-сайта по умолчанию — располагается в  /var/www/html.

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

Примечание: ваше зарегистрированное доменное имя должно указывать на IP-адрес вашего сервера Ubuntu.

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

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

$ cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/setiwik.conf

Далее отключите виртуальный хост по умолчанию с помощью приведенной ниже команды.

$ sudo a2dissite 000-default. conf

Создать корневой каталог документа

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

$ sudo mkdir /var/www/setiwik

Затем сделайте учетную запись Пользователя службы Apache2 (www-data) и группу (www-data) владельцами корневого каталога документа. Это можно сделать следующим образом.

$ sudo chown www-data:www-data /var/www/setiwik

Далее, предоставьте учетной записи Пользователя службы Apache2 (www-data) полный доступ к корневому каталогу документа с помощью следующей команды.

$ sudo chmod 755 /var/www/setiwik

Создание индексного файла сайта

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

$ sudo nano /var/www/setiwik/index.html

Скопируйте и вставьте пример HTML-кода ниже.

<!DOCTYPE html>
<html>
<head>
<title>Welcome to SETIWIK!</title>
<style>
body {
width: 35em;
margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif;
}
</style>
</head>
<body>
<h2>Welcome to SETIWIK!</h2>
<p>Если вы видите эту страницу, веб-сайт SETIWIK работает правильно</p>
</body>
</html>

Сохраните и закройте файл index.html.

Измените конфигурацию виртуального хоста

Затем отредактируйте новый файл конфигурации виртуального хоста с помощью следующей команды.

$ sudo nano /etc/apache2/sites-available/setiwik.conf

Теперь раскомментируйте строку, которая начинается с ServerName, а затем замените www.example.com с фактическим URL-адресом веб-сайта. А так же замените /var/www/html новым корневым путем документа.

Ниже приведен пример того, что ожидается после внесения изменений.

<VirtualHost *:80>

ServerName www.setiwik.ru


ServerAdmin webmaster@localhost
DocumentRoot /var/www/setiwik


ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined


</VirtualHost>

Сохраните и закройте файл конфигурации виртуального хоста.

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

Чтобы включить виртуальный хост Apache2, выполните команду.

$ sudo a2ensite setiwik.conf

Наконец, перезапустите веб-сервер Apache2 с помощью:

$ sudo systemctl restart apache2

Теперь мой сайт доступен через www.setiwik.ru как показано на рисунке ниже.

Добро пожаловать в виртуальный хост setiwik

Основные команды для управления HTTP-сервером Apache

В заключение мы приведем некоторые основные команды systemctl, которые помогут вам управлять вашим веб-сервером Apache2.

Используйте restart, чтобы остановить службу Apache2, а затем запустить ее снова.

$ sudo systemctl restart apache2

Используйте опцию reload, чтобы указать Apache2 перезагрузить свои конфигурационные файлы, но без остановки службы.

$ sudo systemctl reload apache2

Выполните команду stop, чтобы остановить службу Apache2.

$ sudo systemctl stop apache2

Чтобы включить запуск службы Apache2 при загрузке сервера, выполните следующие действия:

$ sudo systemctl enable apache2

Помощники Apache2

a2ensite – включить сайт apache2 или виртуальный хост.

$ sudo a2ensite setiwik.conf

a2dissite – используется для отключения сайта apache2 или виртуального хоста.

sudo a2dissite setiwik. conf

Базовая конфигурация Apache2 и файлы журналов

Конфигурационные файлы Apache2

/etc/apache2/apache2.conf — основной конфигурационный файл, который извлекает информацию из всех других конфигурационных файлов при запуске веб-сервера.

/etc/apache2/ports.conf — определяет порты прослушивания для входящих соединений.

/etc/apache2/mods-enabled — содержит информацию о конфигурации для управления модулями.

/etc/apache2/conf-enabled — содержит некоторую глобальную информацию о конфигурации.

/etc/apache2/sites-available — хранит конфигурации виртуальных хостов.

/etc/apache2/sites-enabled — определяет включенные виртуальные хосты.

Файлы журналов Apache2

/var/log/apache2/error.log — содержит информацию об ошибках, с которыми сталкивается Apache2.

/var/log/apache2/access.log — содержит все запросы, обработанные Apache2.

Заключение

В этой инструкции мы установили и настроили HTTP-сервер Apache вместе с виртуальным хостом на Ubuntu 20.04. Кроме того, мы рассмотрели некоторые полезные команды для управления Apache2. Наконец, мы дали краткое описание важных конфигов и лог-файлов, используемых Apache2.

Apache2 на виртуальном хостинге Ubuntu с разными портами

Настройка

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

Кроме того, на вашем виртуальном сервере должен быть уже установлен и запущен apache
Если это не так, вы можете загрузить его с помощью этой команды:

  
apt-get install apache2    //установите apache2 на ubuntu

Шаг первый — создание нового каталога


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

Это расположение будет корневым каталогом документа в файле виртуальной конфигурации Apache позже. Добавляя -p к строке кода, команда автоматически создает всех родителей для нового каталога.


mkdir -p /var/www/sourabh.com/public_html

 
Нам нужно передать право собственности на каталог пользователю, а не просто оставить его в корневой системе.

chown -R bhushan.bhushan /var/www/sourabh.com/public_html     //bhushan — локальный пользователь на сервере


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

chmod -R 755 /var/www

В нашем каталоге конфигураций нам нужно создать новый файл с именем index.html

vim /var/www/sourabh.com/public_html/index.html

Мы можем добавить некоторый текст в файл, чтобы нам было на что смотреть, когда IP-адрес перенаправляется на виртуальный хост.

vim /var/www/sourabh.com/public_html/index. html

<голова> www.sourabh.com <тело>

СУРАБХ


Следующим шагом является настройка конфигурации Apache. мы собираемся работать от дубликата — продолжайте и сделайте копию файла (назовите его в честь ваше доменное имя) в том же каталоге:
cp /etc/apache2/sites-available/default /etc/apache2/sites-available/sourabh.com

Откройте новый файл конфигурации:
vim /etc/apache2/sites-available/sourabh.com

(выделены жирные шрифты)

/// Измените номер порта здесь по умолчанию на 80
ServerAdmin webmaster@localhost

ServerName sourabh.com                                // Укажите здесь имя сервера
DocumentRoot /var/www/sourabh.com/public_html/            // укажите путь к корню документа здесь MultiViews
AllowOverride Нет
Разрешить, запретить
разрешить всем

ScriptAlias ​​/cgi-bin/ /usr/lib/cgi-bin/

Аллововеррайд Нет
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Порядок разрешить, запретить
Разрешить для всех

ErrorLog ${APACHE_LOG_DIR}/error. log

# Возможные значения: отладка, информация, уведомление, предупреждение, ошибка, крит,
# бдительный, эмердж.
LogLevel warn

CustomLog ${APACHE_LOG_DIR}/access.log в сочетании

Псевдоним /doc/ "/usr/share/doc/"

Options Indexes MultiViews FollowSymLinks

AllowOverride Нет
Отказать в заказе, разрешить
Запретить от всех
Разрешить от 127.0.0.0/255.0.0.0 ::1/128

ЕСЛИ ВЫ ХОТИТЕ ЗАПУСТИТЬ ВЕБ-САЙТ НА ДРУГОМ УКАЗАТЬ НОМЕР ПОРТА В файле port.conf КАК КАК:-

vim /etc/apache2/ports.conf

NameVirtualHost *:80

Listen 80
Listen 8080 /       /       / здесь или изменить более 80


# Если вы добавите здесь NameVirtualHost *:443, вам также придется изменить
# оператор VirtualHost в /etc/apache2/sites-available/default-ssl
# на
# Указание имени сервера для Именованные виртуальные хосты SSL в настоящее время не поддерживаются
# MSIE в Windows XP.
Listen 443


Listen 443

Последний шаг — активация хоста с помощью встроенного ярлыка apache:

a2ensite sourabh.com

Мы внесли множество изменений в конфигурацию и виртуальный хост настроен. Однако ни одно из внесенных нами изменений не действует до тех пор, пока Apache не будет перезапущен. Используйте эту команду для перезапуска Apache:

перезапуск службы apache2

Настройка записи локального хоста

vim /etc/hosts

//    hostname

172.16.16.0016
172.16.1.12    fny.com

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


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

 

Теперь проверьте, работает ли ваш сайт.

http://sourabh.com

Как управлять и использовать виртуальные хосты Apache в Ubuntu

Что такое виртуальные хосты Apache?

Термин виртуальный хост относится к методу работы с одним веб-сайтом, например yourdomain.com, test.yourdomain.com, или www.yourdomain.com, www.yourdomain2.com в одной системе. В Apache существует два типа виртуального хостинга: виртуальный хостинг на основе IP и виртуальный хостинг на основе имени. С помощью виртуального хостинга на основе IP вы можете разместить несколько веб-сайтов или доменов в одной системе, но каждый веб-сайт/домен будет иметь уникальный IP-адрес. С помощью виртуального хостинга на основе имени вы можете разместить несколько веб-сайтов/доменов на одном и том же IP-адресе. Виртуальный хостинг может быть полезен, если вы хотите разместить различные веб-сайты и домены на одном физическом сервере или VPS. Надеюсь, вы получили общее представление о виртуальных хостах Apache. Сегодня мы увидим, как настроить виртуальные хосты Apache в Ubuntu.

1. Необходимые условия
  • Операционная система под управлением Ubuntu Linux
  • Пользователь root или обычный пользователь с привилегиями Sudo
  • Имеет стабильное подключение к Интернету
  • Окно терминала/Командная строка
2. Обновите локальные репозитории

Обновите все системные пакеты до последней версии. Выполните следующую команду:

 #! /бин/баш
sudo apt-получить обновление
sudo apt-get upgrade -y 
3. Установка Apache на VPS

Apache Virtual Host позволяет максимально эффективно использовать ресурсы при настройке веб-сайта. Это мощное программное обеспечение может использовать один сервер и один IP-адрес для размещения множества доменов.

Перед настройкой виртуальных хостов Apache необходимо установить веб-сервер Apache. Выполните следующую команду:

 #! /бин/баш
sudo apt-get install apache2 

 

Введите Y для ответа Да и нажмите Введите .

Если у вас возникли проблемы с настройкой веб-сервера, обратитесь к нашему подробному руководству по установке Apache в Ubuntu.

Apache уже должен быть запущен. Чтобы проверить статус, выполните следующую команду:

Проверьте установку, посетив IP-адрес вашего сервера в браузере. Вы должны увидеть Apache2 Ubuntu Default Page .

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

Чтобы удалить Apache, выполните следующую команду:

 #! /бин/баш
sudo apt-get purge apache2 
4. Структура каталога виртуального хоста Apache

Перейдите в каталог, где хранятся все файлы конфигурации Apache, выполните следующую команду:

 #! /бин/баш
cd /etc/apache2 

Когда вы войдете, запустите команду ls , и вы увидите несколько файлов и каталогов. Вот некоторые важные каталоги и файлы, которые вы увидите в каталоге /etc/apache2 .

  • apache2.conf — это основной файл конфигурации Apache.
  • conf-available содержит все дополнительные файлы конфигурации.
  • conf-enabled содержит символические ссылки на файлы конфигурации, которые включены.
  • Файл envvars содержит переменные среды.
  • Доступные моды содержит все доступные модули Apache.
  • с поддержкой модов содержит символические ссылки на разрешенные модули.
  • ports.conf включают конфигурацию порта (на каком порту вы хотите прослушивать запросы?).
  • site-available содержит все файлы виртуальных хостов, которые мы создаем.
  • site-enabled содержит симлинки всех виртуальных хостов, которые мы хотим включить.

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

5. Настройка виртуального хоста на Apache

Пример конфигурации виртуального хоста, показанный в этом руководстве, основан на имени, поскольку он использует доменное имя веб-сайта для различения запросов. Существует еще один режим на основе IP, когда несколько доменов должны быть связаны с уникальным IP-адресом.
В примере этого руководства mypersonaldomain.com будет использоваться в качестве домена, но вам придется использовать существующий домен, которым вы владеете.
Получив доступ к IP-адресу сервера, на котором вы только что установили Apache, вы обычно можете найти содержимое своего веб-сайта в общедоступной папке по адресу 9.0269 вар/www/html .
Если вы хотите разместить несколько веб-сайтов, легко увидеть, как создать столько папок, сколько существует веб-сайтов, при условии, что для каждого веб-сайта правильно настроен файл конфигурации виртуального хоста, который сделает его доступным через Интернет.
Итак, перейдите в /var/www и создайте папку для своего сайта. Вы можете присвоить каждой папке соответствующее доменное имя:

 #! /бин/баш
компакт-диск /var/www
sudo mkdir -p yourdomain.com/{public_html,logs} 

Добавьте следующий образец HTML:

 #! /бин/баш
sudo nano /var/www/yourdomain.com/public_html/index.html 
 
  <голова>
    Добро пожаловать на YourDomain.com!
  
  <тело>
     

Успех! Виртуальный хост yourdomain.com работает!

Сохраните и закройте этот файл.

Измените владельца файла каталога, выполните следующую команду:

 #! /бин/баш
sudo chown -R $USER:$USER /var/www/yourdomain.com/public_html 

В приведенном выше коде мы используем $USER для предоставления разрешения обычным пользователям без полномочий root на доступ к этому каталогу.
Нам также необходимо изменить права доступа к файлам корневой папки документов, чтобы обеспечить правильное обслуживание всех файлов и страниц.

 #! /бин/баш
sudo chmod -R 755 /var/www 

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

 #! /бин/баш
sudo nano /etc/apache2/sites-available/yourdomain.conf 

Теперь вставьте следующее содержимое в файл виртуального хоста. Я объясню эти директивы подробно позже в этом руководстве.

 <Виртуальный хост *:80>
    ServerAdmin [email защищен]
    Имя сервера yourdomain.com
    Псевдоним сервера www.yourdomain.com

    DocumentRoot /var/www/yourdomain.com/public_html

    Журнал ошибок /var/www/yourdomain.com/logs/error.log
    CustomLog /var/www/yourdomain.com/logs/access.log вместе
 

Сохраните и закройте, используя комбинацию CTRL + X , затем нажмите Y и подтвердите, нажав ENTER .

Не забудьте заменить yourdomain.com на ваше доменное имя. Давайте сначала разберемся с директивами, используемыми в этом файле виртуального хоста.

  • ServerAdmin : Электронная почта, указанная вами в этой директиве, будет отображаться, если пользователь столкнется с внутренней ошибкой сервера. Чтобы они могли связаться с вами напрямую по электронной почте.
  • ServerName : это основной домен вашего приложения. Здесь я использую domain1.com. Вы можете заменить его любым доменным именем, которое хотите разместить на своем сервере.
  • ServerAlias ​​ : Эта директива содержит все различные домены/поддомены, которые вы хотите использовать для доступа к сайту. Здесь вы можете добавить несколько имен хостов, разделенных пробелом.
  • DocumentRoot : В этой директиве укажите каталог, в который вы хотите направлять запросы, поступающие для этого файла виртуального хоста, если они разрешают его. Это означает, что запросы, поступающие на domain1.com, будут направляться в каталог /var/www/domain1.com/public_html.
  • ErrorLog : В этой директиве укажите путь к файлу журнала ошибок. Все ошибки, возникающие во время выполнения, будут регистрироваться в упомянутом здесь файле.
  • CustomLog : Указанный здесь путь к файлу журнала будет содержать все журналы доступа.

И ... — это блок виртуального хоста. Вы можете создать несколько таких блоков в одном файле yourdomain.conf для нескольких доменов, и он все равно будет работать!

Затем включите новый сайт и отключите конфигурацию Apache по умолчанию:

 #! /бин/баш
sudo a2ensite yourdomain 

После этого проверьте конфигурацию на наличие синтаксических ошибок:

 #! /бин/баш
sudo apachectl configtest 

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

 #! /бин/баш
sudo systemctl перезапустить apache2 

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

http://yourdomain.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *