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

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

Работа виртуального хоста

Существует много способов настройки https://g-i-t.ru/catalog/virtualnyy_khosting/ виртуального хоста, и большинство способов, которые используются сегодня, приведены ниже:

  • На основе IP
  • На основе портов
  • Имя на основе

1. На основе IP

Это один из самых простых методов из трех, и его можно использовать для применения различных директив на основе IP-адреса. В виртуальном хостинге на основе IP мы используем разные IP-адреса для каждого домена.

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

2. На основе портов

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

3. Имя на основе

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

Как создать виртуальный хост / Примеры и иллюстрации?

В целях нашей иллюстрации мы будем использовать сервер Apache для настройки хостов Apache поверх операционной системы Ubuntu. Одной из причин выбора Apache является то, что это один из самых надежных и надежных серверов, используемых для настройки Iy.

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

Это помогло бы, если бы у вас была ОС Ubuntu и установка Apache.

Если Apache не установлен, пожалуйста, установите его с помощью следующих команд:

sudo apt-get update
sudo apt-get install apache2

Что касается нашего руководства, мы создадим виртуальный хост для доменов:

  1. Test1.com
  2. Test2.com

Шаг 1. Создайте структуру каталогов

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

Итак, мы собираемся создать структуру каталогов следующим образом в корне нашего документа ( каталог /var/ www)

sudo mkdir -p /var/www/test1.com/public_html
sudo mkdir -p /var/www/test2.com/public_html

Экземпляр EC2

Шаг 2: Разрешения

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

sudo chown -R $USER:$YOUR_USER_NAME /var/www/test1.com /public_html
sudo chown -R $USER:$ YOUR_USER_NAME /var/www/test2.com /public_html

Шаг 3. Создайте примерные (демонстрационные) страницы для каждого из виртуальных хостов

 Давайте сначала создадим образец / тестовую страницу для test1.com .

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

vi /var/www/test1.com/public_html/index.html

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

<html>
<head>
<title>Home Page of Test1.com<title>
</head>
<body>
<h1>Success! The test1 virtual host is working!</h1>
</body>
</html>

HTML-код

Аналогично, мы можем создать HTML-страницу для другого веб-сайта, т.Е. test.com .

vi /var/www/test2.com/public_html/index.html

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

<html>
<head>
<title>Home Page of Test2.com<title>
</head>
<body>
<h1>Success! The test2 virtual host is working!</h1>
</body>
</html>

Шаг 4: Создать новые файлы для виртуального хоста

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

Давайте сначала скопируем этот файл apache conf в наш первый домен:

sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sitesavailable/test1.conf

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

Это должно выглядеть примерно так, как показано ниже:

<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

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

ServerAdmin admin@test1.com

Следующее, что нужно сделать, это добавить 2 директивы: ServerName (это должен быть ваш домен) и ServerAlias. Это достигается как:

ServerName test1.com
ServerAlias www.test2.com

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

Это может быть достигнуто с помощью:

DocumentRoot /var/www/test1.com/public_html.

Аналогично, пожалуйста, следуйте приведенным выше процедурам и для нашего второго домена.