Настройка виртуального хоста на основе IP и порта в Apache

Настройка виртуального хоста Apache на основе IP и порта

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

Здесь мы собираемся разместить "www.ipvhost1.com" на IP "192.168.1.227", "www.ipvhost2.com" на IP "192.168.1.228" и "www.portvhost.com" на IP "192.168.1.228". с портом 8080.

Требования

  • ОС: Ubuntu server 14.04 с установленным Apache
  • IP-адрес1: 192.168.1.227
  • IP-адрес2: 192.168.1.228
  • Домен: www.ipvhost1.com
  • Домен: www.ipvhost2.com
  • Домен: www.portvhost.com

Создание нескольких IP-адресов в одном сетевом интерфейсе

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

Для этого вам необходимо отредактировать файл "/ etc / network / interfaces".

Добавьте следующие строки:

Сохраните и закройте файл, затем перезапустите сетевую службу, чтобы изменения вступили в силу.

Настройка нескольких экземпляров Apache

По умолчанию Apache прослушивает порт 80. Для виртуального хостинга на основе порта вам необходимо указать Apache прослушивать IP-адреса "192.168.1.227" и "192.168.1.228" на порту 80 и IP "192.168.1.228" на порту 8080.

Чтобы настроить несколько портов, вам нужно отредактировать "/etc/apache2/ports.conf".

Добавьте следующую строку:

Сохраните и закройте файл, затем перезапустите Apache, чтобы изменения вступили в силу.

Создать виртуальные каталоги

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

Создайте три каталога для веб-сайтов "www.ipvhost1.com", "www.ipvhost2.com" и "www.portvhost.com" в каталоге DocumentRoot по умолчанию Apache.

Создание тестовых веб-страниц для каждого виртуального хоста

Создайте файл index.html для каждого веб-сайта, который определяет конкретные IP-адреса и порт.

Создайте файл index.html для виртуального хоста "www.ipvhost1.com".

Добавьте следующий контент.

Сохраните и закройте файл, когда закончите.

Создайте файл index.html для виртуального хоста www.ipvhost2.com.

Добавьте следующий контент.

Сохраните и закройте файл, когда закончите.

Создайте файл index.html для виртуального хоста www.portvhost.com.

Добавьте следующий контент.

Сохраните и закройте файл, когда закончите.

Настройка прав собственности и разрешений

По умолчанию служба Apache работает в Ubuntu как пользователь "www-data". Вы должны изменить владельца этих трех виртуальных каталогов на "www-data", чтобы Apache мог читать и записывать данные.

Для этого запустите:

Кроме того, вам необходимо убедиться, что корневой веб-каталог Apache (/ var / www / html) доступен для чтения, чтобы каждый мог читать из него файлы.

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

По умолчанию Apache поставляется с файлом виртуального хоста по умолчанию под названием "000-default.conf". Сначала вам нужно отключить этот файл виртуального хоста.

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

Следующим шагом является создание файла конфигурации виртуального хоста для каждого веб-сайта. Имя каждого файла конфигурации должно заканчиваться на ".conf".

Создайте файл виртуального хоста для веб-сайта "www.ipvhost1.com".

Добавьте следующий контент.

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

Создайте файл виртуального хоста для веб-сайта "www.ipvhost2.com".

Добавьте следующий контент.

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

Создайте файл виртуального хоста для веб-сайта www.portvhost.com.

Добавьте следующий контент.

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

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

Вы можете сделать это, запустив.

Наконец, перезапустите службу Apache.

Тестирование виртуальных хостов

Пришло время протестировать виртуальный IP-адрес. На компьютере откройте веб-браузер и перейдите к URL-адресам "http://192.168.1.227:80" и "http://192.168.1.228:80". Вы должны увидеть образцы демонстрационных страниц для виртуального хостинга на основе IP, которые выглядят следующим образом:

apache_ipvhost1

apache_ipvhost2

Аналогичным образом, чтобы протестировать виртуальный хост порта, откройте свой веб-браузер и перейдите по URL-адресу "http://192.168.1.228:8080". Вы должны увидеть образец демонстрационной страницы виртуального хостинга на основе порта, который выглядит следующим образом:

apache_portvhost

Заключение

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