ГлавнаяОперационные системыLinuxНастройка IP и виртуального хоста на основе порта в Apache

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

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

кольких веб-сайтов на одном сервере. Существует два типа виртуального хостинга: Виртуальный хостинг на основе имени и виртуальный хостинг на базе 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 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».

sudo nano /etc/network/interfaces

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

auto eth0
iface eth0 inet static
address 192.168.1.227
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 8.8.8.8
 
auto eth0:1
iface eth0:1 inet static
address 192.168.1.228
netmask 255.255.255.0

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

sudo  /etc/init.d/networking restart
sudo ifup eth0:1

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

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

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

sudo nano /etc/apache2/ports.conf

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

Listen 192.168.1.227:80
Listen 192.168.1.228:80
Listen 192.168.1.228:8080

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

sudo /etc/init.d/apache2 restart

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

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

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

sudo mkdir -p /var/www/html/Настройка нескольких экземпляров Apachedir -p /var/www/html/www.ipvhost2.com
sudo mkdir -p /var/www/html/www.portvhost.com

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

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

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

sudo nano  /var/www/html/www.ipvhost1.com/index.html

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

<html>
<head>
<title>www.ipvhost1.com</title>
</head>
<body>
<h1>The ipvhost1.com ip virtual host is working!</h1>
</body>
</html>

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

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

sudo nano  Создание виртуальных каталоговspan>html/www.ipvhost2.com/index.html

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

<html>
<head>
<title>www.ipvhost2.com</title>
</head>
<body>
<h1>The ipvhost2.com ip virtual host is working!</h1>
</body>
</html>

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

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

sudo nano  /var/www/html/www.portvhost.com/index.html

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

<html>
<head>
<title>www.portvhost.com</title>
</head>
<body>
<h1>The portvhost.com port virtual host is working!</h1>
</body>
</html>

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

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

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

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

Для этого выполните:

sudo chown -R www-data:www-data /var/www/html/www.ipvhost1.com
sudo chown -R www-data:www-data /var/www/html/www.ipvhost2.com
sudo chown -R www-data:www-data /var/www/html/www.portvhost.com

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

sudo chmod -R 755 /var/www/html

<

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

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

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

sudo a2dissite 000-default.conf

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

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

sudo nano /etc/apache2/sites-available/www.ipvhost1.com.conf

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

<VirtualHost 192.168.1.227:80>
 
ServerAdmin admin@ipvhost1.com
ServerName  www.ipvhost1.com
DocumentRoot /var/www/html/www.ipvhost1.com
 
ErrorLog ${APACHE_LOG_DIR}/www.ipvhost1.com_error.log
CustomLog ${APACHE_LOG_DIR}/www.ipvhost1.com_access.log combined
 
</VirtualHost>

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

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

sudo nano /etc/apache2/sites-available/www.ipvhost2.com.conf

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

<VirtualHost 192.168.1.228:80>
 
ServerAdmin admin@ipvhost2.com
ServerName  www.ipvhost2.com
DocumentRoot /var/www/html/www.ipvhost2.com
 
ErrorLog ${APACHE_LOG_DIR}/www.ipvhost2.com_error.log
CustomLog ${APACHE_LOG_DIR}/www.ipvhost2.com_access.log combined
 
</VirtualHost>

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

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

sudo nano /etc/apache2/sites-available/www.portvhost.com.conf

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

<VirtualHost 192.168.1.228:8080>
 
ServerAdmin admin@portvhost.com
ServerName  www.portvhost.com
DocumentRoot /var/www/ht

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

g ${APACHE_LOG_DIR}/www.portvhost.com_error.log CustomLog ${APACHE_LOG_DIR}/www.portvhost.com_access.log combined   </VirtualHost>

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

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

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

sudo a2ensite www.ipvhost1.com.conf
sudo a2ensite www.ipvhost2.com.conf
sudo a2ensite www.portvhost.com.conf

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

sudo /etc/init.d/apache2 restart

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

Теперь пришло время протестировать IP Virtualhost. На компьютере откройте веб-браузер и перейдите по 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. Вы можете легко настроить множество доменов на одном сервере.

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

Заключение

ПОХОЖИЕ СТАТЬИ

Популярные записи