Настройка прав собственности и разрешений
кольких веб-сайтов на одном сервере. Существует два типа виртуального хостинга: Виртуальный хостинг на основе имени и виртуальный хостинг на базе 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-адре
Contents
- 1 Требования
- 2 Создание нескольких IP-адресов в одном сетевом интерфейсе
- 4 Создание виртуальных каталогов
- 5 Создание тестовых веб-страниц для каждого виртуального хоста
- 6 Настройка прав собственности и разрешений
- 7 Создание файлов виртуального хоста
- 8 Тестирование виртуальных хостов
- 9 Заключение
Требования
если у вас только одна сетевая карта.Для этого вам необходимо отредактировать файл «/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/Настройка нескольких экземпляров Apache
dir -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, которые выглядят следующим образом:
Аналогично, чтобы протестировать виртуальный порт порта, откройте веб-браузер и перейдите по URL-адресу «http://192.168.1.228:8080». Вы должны увидеть пример демонстрационной страницы виртуального хостинга на основе порта, который выглядит следующим образом:
Заключение
В этом посте я показал пошаговую процедуру создания и включения виртуального хоста на основе IP и порта на веб-сервере Apache. Вы можете легко настроить множество доменов на одном сервере.