Купить Корзина
  • Домены и сайты
  • Облако и IT-инфраструктура
  • Вход

Получить консультацию

Ответим на вопросы, расскажем о конфигурациях, поможем с переносом, подберем оборудование, подготовим коммерческое предложение

Нажимая кнопку «Отправить» я даю согласие на обработку персональных данных и подтверждаю, что ознакомился с Политикой конфиденциальности и правилами пользования сайтом

Персональный менеджер ответит на ваши вопросы и проведет через все этапы заключения договора: — подберет оборудование — сформирует коммерческое предложение — поможет с миграцией сервера к нам

Нажимая кнопку «Отправить» я даю согласие на обработку персональных данных и подтверждаю, что ознакомился с Политикой конфиденциальности и правилами пользования сайтом

Или просто оставьте номер телефона, и мы перезвоним вам

  • Телефон в Москве

    +7 495 580-11-11
  • Бесплатный звонок по России

    8 800 555-34-78
  • Или обратитесь в наши офисы

    Региональные номера
    1. База знаний
    2. Рег.облако
    3. Облачные серверы
    4. Установка программного обеспечения
    5. Как настроить виртуальные хосты в 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 "<h1>faq-reg.ru</h1>" > /var/www/faq-reg.ru/index.html

    Для support-faq.ru:

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

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

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

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

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

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

    • 1

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

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

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

    • 2

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

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

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

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

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

      настройка виртуальных хостов apache ubuntu 1

    • 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

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

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

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

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

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

      настройка виртуальных хостов apache ubuntu 2

    • 7

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

      sudo a2dissite 000-default.conf

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

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

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

      sudo service apache2 restart

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

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

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

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

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

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

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

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

    Спасибо за оценку. Рады помочь 😊

     👍
    Специальные предложения
    • Бесплатный хостинг для сайта
    • Дешевый хостинг
    • Бесплатный VPS-сервер
    • Дешёвые VPS
    Рассылка Рег.ру

    Лайфхаки, скидки и новости об IT

    Даю согласие на получение рекламных и информационных материалов

    Домены и сайты
    • Домены
    • Хостинг
    • Создание сайтов
    • SSL-сертификаты
    • VPS и VDS серверы
    • Whois
    • Магазин доменов
    Облако
    и IT-инфраструктура
    • Облачные серверы
    • Частное облако
    • Облачное хранилище
    • Kubernetes в облаке (K8S)
    • Облачные базы данных
    • Выделенные серверы
    Полезное
    • Стоимость услуг
    • Cпособы оплаты
    • База знаний
    • Документы
    • ЭДО
    • Партнерам
    • Сообщить о нарушении
    • РБК: новости России и мира сегодня
    • Новости компаний РФ
    • РБК Инвестиции: курсы валют
    Компания
    • О компании
    • Контакты
    • Офисы
    • Новости
    • Акции и скидки
    • Блог
    • Отзывы клиентов
    8 800 555-34-78 Бесплатный звонок по России
    +7 495 580-11-11 Телефон в Москве
    • vk
    • telegram
    • ok
    • moikrug
    • youtube
    • twitter
    • Облачная платформа Рег.ру включена в реестр российского ПО Запись №23682 от 29.08.2024
    • © ООО «РЕГ.РУ»
    • Политика конфиденциальности
      Политика обработки персональных данных
      Правила применения рекомендательных технологий
      Правила пользования
      и другие правила и политики
    • Нашли опечатку?
      Выделите и нажмите Ctrl+Enter
    • Мы используем cookie и рекомендательные технологии для персонализации сервисов и удобства пользователей. Вы можете запретить сохранение cookie в настройках своего браузера