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

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

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

Здесь мы собираемся разместить два веб-сайта, а именно «www.virtualhost1.com» и «www.virtualhost2.com», на одном IP-адресе «192.168.1.227» на веб-сервере Apache, самом популярном веб-сервере. в мире.

Примечание: хотя в этом руководстве используется сервер Ubuntu 14.04, инструкции будут аналогичны для большинства дистрибутивов Linux.

Начало работы: установка Apache

Сначала вам необходимо обновить систему, а затем установить Apache.

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

sudo apt-get update
sudo apt-get install apache2

Чтобы проверить, работает ли веб-сервер, откройте веб-браузер и перейдите по URL-адресу http://192.168.1.227/ (при условии, что IP-адрес вашего сервера — 192.168.1.227).

Вы должны увидеть, чт

Начало работы: установка Apache

g decoding="async" src="https://saintist.ru/wp-content/uploads/2024/05/Apache-testing.jpg" alt="Тестовая страница Apache">

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

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

Создайте два каталога для веб-сайтов «www.virtualhost1.com» и «www.virtualhost2.com».

sudo mkdir -p /var/www/html/www.virtualhost1.com
sudo mkdir -p /var/www/html/www.virtualhost2.com

Примечание. Папка по умолчанию для размещения файлов — «/var/www/html». Тем, кто использует альтернативный путь к файлу, придется соответствующим образом изменить приведенный выше код.

Теперь вам нужно создать файл index.html для обоих веб-сайтов. Это будет обслуживаться веб-сервером Apache.

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

ртуального хоста «www.virtualhost1.com»:

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

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

<html>
    <head>
        <title>www.virtualhost1.com</title>
    </head>
    <body>
        <h1>Welcome To www.virtualhost1.com website</h1>
    </body>
</html>

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

Аналогичным образом создайте файл index.html для виртуального хоста «www.virtualhost2.com»:

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

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

<html>
    <head>
        <title>www.virtualhost2.com</title>
    </head>
    <body>
        <h1>Welcome To www.virtualhost2.com website</h1>
    </body>
</html>

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

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

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

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

sudo chown -R www-data:www-data /var/www/html/www.virtualhost1.com/
sudo chown -R www-data:www-data /var/www/html/www.virtualhost2.com/

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

sudo chmod -R 755 /var/www/html

<

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

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

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

sudo a2dissite 000-default.conf

Теперь создайте файл виртуального хоста «www.virtualhost1.com.conf» для виртуального хоста «www.virtualhost1.com».Настройка прав собственности и разрешений/etc/apache2/sites-available/www.virtualhost1.com.conf

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

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

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

Аналогично создайте файл виртуального хоста «www.virtualhost2.com.conf» для виртуального хоста «www.virtualhost2.com».

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

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

<VirtualHost *:80>
ServerAdmin admin@virtualhost2.com
ServerName  www.virtualhost2.com
DocumentRoot /var/www/html/www.virtualhost2.com
 
ErrorLog ${APACHE

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

ost2.com_error.log CustomLog ${APACHE_LOG_DIR}/www.virtualhost2.com_access.log combined </VirtualHost>

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

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

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

sudo a2ensite www.virtualhost1.com.conf
sudo a2ensite www.virtualhost2.com.conf

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

sudo /etc/init.d/apache2 restart

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

Вам необходимо добавить запись хоста в каждую удаленную или локальную систему, чтобы разрешить веб-сайт по имени.

Вы можете сделать это, отредактировав файл «/etc/hosts».

sudo nano /etc/hosts

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

192.168.1.227 www.virtualhost1.com
192.168.1.227 www.virtualhost2.com

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

Откройте веб-браузер и перейдите по URL-адресам «http://www.virtualhost1.com» и «http://www.virtualhost2.com».

Вы должны увидеть примеры демонстрационных страниц, которые мы создали ранее.

Демонстрационная страница www.virtualhost1.com:

Имя-Apache-virtualhost1

Демонстрационная страница www.virtualhost2.com:

Имя-Apache-virtualhost2

Заключение

Надеюсь, этот пост поможет вам настроить виртуальный хост в Ubuntu. Ограничений на количество виртуальных хостов, которые может обрабатывать Apache, нет, поэтому вы можете создавать и размещать столько веб-сайтов, сколько захотите.

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

Заключение

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

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