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

В этом руководстве мы объясним, как настроить виртуальный хост (vhost) на сервере Apache. Это еще одна статья из серии статей по обслуживанию серверов и Linux. По умолчанию Apache обслуживает свой контент из каталога, расположенного в /var/www/, используя конфигурацию, включенную в /etc/apache2/sites-available/000-default.conf. Вместо изменения файла конфигурации веб-сайта по умолчанию мы создадим новый виртуальный хост. Виртуальные хосты позволяют нам настраивать несколько доменов на одном сервере Apache. Для этого мы создадим каталог в /var/www/ для примера веб-сайта с именем your_domain. Создайте корневой каталог для your_domain следующим образом:

sudo mkdir /var/www/your_domain

Теперь мы установим права доступа к каталогу с помощью переменной среды $USER, которая должна ссылаться на вашего текущего системного пользователя:

sudo chown -R $USER:$USER /var/www/your_domain

Откройте новый файл конфигурации в каталоге sites-available Apache с помощью редактора командной строки. В нашем примере мы используем nano:

sudo nano /etc/apache2/sites-available/your_domain.conf

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

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

С помощью этих настроек VirtualHost мы фактически указываем Apache обслуживать контент вашего домена в следующем каталоге:

/var/www/your_domain

Вы можете протестировать Apache без доменного имени, удалив параметры ServerName и ServerAlias или добавив символ # в начале каждой строки параметра. Теперь вы можете использовать a2ensite для активации этого виртуального хоста:

sudo a2ensite ваш_домен

Для удобства и безопасности рекомендуется отключить веб-сайт по умолчанию, который поставляется с Apache. Чтобы отключить веб-сайт Apache по умолчанию, введите:

sudo a2dissite 000-default

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

sudo apache2ctl configtest

Наконец, перезагрузите Apache, чтобы изменения вступили в силу:

sudo systemctl reload apache2

Ваш новый сайт активен, но его корневой каталог — /var/www/your_domain — пуст.


2026 © Linux Hosting - Веб-хостинг с 2011 года