Поиск по сайту:

Все, кто стремится к добродетели, друзья между собой.. (Антисфен).

3 мин для чтенияКак настроить виртуальные хосты Apache в Ubuntu 20.04

FavoriteLoadingДобавить в избранное
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)
Загрузка...
29 июня 2020
Как настроить виртуальный хост Apache на CentOS 7
Виртуальный хост – это директива конфигурации Apache, которая позволяет вам запускать более одного веб-сайта на одном сервере. С помощью виртуальных хостов вы можете указать корневой каталог документа сайта (каталог, содержащий файлы сайта), создать отдельную политику безопасности для каждого сайта, использовать разные сертификаты SSL и многое другое.

В этой статье описывается, как настроить виртуальные хосты Apache в Ubuntu 20.04.

 

Предпосылки

Убедитесь, что вы выполнили следующие требования, прежде чем продолжить статью:

  • Один или несколько доменных имен, указывающих на IP вашего публичного сервера.
  • Apache установлен в вашей системе Ubuntu.
  • Вы вошли как root или пользователь с привилегиями sudo.

 

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

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

/var/www/
├── domain1.ru
│   └── public_html
├── domain2.ru
│   └── public_html

 

Для каждого домена, размещенного на сервере, корневой каталог документа будет установлен на /var/www/<domain_name>/public_html.

Начните с создания корневого каталога для домена:

sudo mkdir -p /var/www/domain1.ru/public_html

 

Мы также создадим файл index.html в корневом каталоге документов домена, который будет отображаться при посещении домена в браузере:

/var/www/domain1.ru/public_html/index.html

 

<!DOCTYPE html>
<html lang="en" dir="ltr">
  <head>
    <meta charset="utf-8">
    <title>Добро пожаловать на domain1.ru</title>
  </head>
  <body>
    <h1>Успех! Главная страница domain1.ru!</h1>
  </body>
</html>

 

Поскольку приведенные выше команды выполняются от имени пользователя sudo, вновь созданные файлы и каталоги принадлежат пользователю root. Чтобы избежать каких-либо проблем с разрешениями, измените владельца корневого каталога документов домена и всех файлов в этом каталоге на пользователя apache (www-data):

sudo chown -R www-data: /var/www/domain1.ru

 

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

В системах Ubuntu файлы конфигурации Apache Virtual Hosts находятся в каталоге /etc/apache2/sites-available. Их можно включить, создав символические ссылки на каталог /etc/apache2/sites-enabled, которые Apache прочитал при запуске.

Читать  Как создать псевдонимы в Bash

Откройте выбранный вами текстовый редактор и создайте следующий базовый файл конфигурации виртуального хоста:

/etc/apache2/sites-available/domain1.ru.conf

 

<VirtualHost *:80>
    ServerName domain1.ru
    ServerAlias www.domain1.ru
    ServerAdmin webmaster@domain1.ru
    DocumentRoot /var/www/domain1.ru/public_html

    <Directory /var/www/domain1.ru/public_html>
        Options -Indexes +FollowSymLinks
        AllowOverride All
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/domain1.ru-error.log
    CustomLog ${APACHE_LOG_DIR}/domain1.ru-access.log combined
</VirtualHost>

 

  • ServerName: Домен, который должен соответствовать этой конфигурации виртуального хоста. Это должно быть ваше доменное имя.
  • ServerAlias: Все другие домены или субдомены, которые должны соответствовать этому виртуальному хосту, например, субдомен www.
  • DocumentRoot: Каталог, из которого Apache будет обслуживать файлы домена.
  • Options: Эта директива, какие особенности сервера доступны в каталоге конкретного.
    • -Indexes: Предотвращает списки каталогов.
    • FollowSymLinks: Когда эта опция включена, Apache будет переходить по символическим ссылкам.
  • AllowOverride: Указывает, какие директивы, объявленные в файле .htaccess, могут переопределять директивы конфигурации.
  • ErrorLog, CustomLog: Указывает местоположение для файлов журнала.

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

Чтобы включить новый файл виртуального хоста, используйте a2ensiteвспомогательный скрипт, который создает символическую ссылку из файла виртуального хоста в каталог sites-enabled:

sudo a2ensite domain1.ru

 

Другой вариант – создать символическую ссылку вручную, как показано ниже:

sudo ln -s /etc/apache2/sites-available/domain1.ru.conf /etc/apache2/sites-enabled/

 

После этого проверьте конфигурацию на наличие синтаксических ошибок с помощью:

sudo apachectl configtest

 

Если ошибок нет, вы увидите следующий вывод:

Syntax OK

 

Перезапустите службу Apache, чтобы изменения вступили в силу:

sudo systemctl restart apache2

 

Наконец, чтобы убедиться, что все работает должным образом, откройте http://domain1.ru в вашем браузере, и вы увидите содержимое страницы index.html:

 

Вывод

Вы узнали, как создать конфигурацию виртуального хоста Apache для размещения нескольких доменов на одном сервере Ubuntu.

Повторите шаги, описанные выше, чтобы создать дополнительные виртуальные хосты для всех ваших доменов.

Если вы столкнулись с какой-либо проблемой, не стесняйтесь оставлять комментарии.

Читать  Требуется перезапуск системы в Ubuntu

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Читайте также

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам:

Заполните форму и наш менеджер перезвонит Вам в самое ближайшее время!

badge
Обратный звонок 1
Отправить
galka

Спасибо! Ваша заявка принята

close
galka

Спасибо! Ваша заявка принята

close