Android

Как настроить виртуальные хосты Apache на Debian 9

Настройка SAMBA в Debian 9: Часть 1

Настройка SAMBA в Debian 9: Часть 1

Оглавление:

Anonim

В этом руководстве мы расскажем, как настроить виртуальные хосты Apache в Debian 9.

Виртуальные хосты Apache позволяют размещать более одного домена на одном компьютере. При использовании виртуальных хостов вы можете указать другой корень документа (каталог, содержащий файлы веб-сайта) для каждого домена или субдомена, создать отдельную политику безопасности, использовать разные сертификаты SSL и многое другое.

Хотя это руководство написано для Debian 9, те же шаги применимы для всех дистрибутивов на основе Debian.

Предпосылки

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

  • Имейте доменное имя, указывающее на IP-адрес вашего сервера. В этом руководстве мы будем использовать example.com Установите Apache на вашем сервере Debian. Зарегистрируйтесь как пользователь с правами sudo.

Создать структуру каталогов

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

/var/www/ ├── domain1.com │ └── public_html ├── domain2.com │ └── public_html ├── domain3.com │ └── public_html

Каждый домен, размещенный на нашем сервере, будет иметь корневой каталог документа в /var/www/ /public_html /var/www/ /public_html .

Давайте начнем с создания корневого каталога документа для нашего первого домена, example.com :

sudo mkdir -p /var/www/example.com/public_html

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

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

/var/www/example.com/public_html/index.html

<code> Welcome to example.com Success! example.com home page! </code>

Welcome to example.com Success! example.com home page!

Мы выполняем команды как пользователь sudo, а вновь созданные файлы и каталоги принадлежат пользователю root.

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

sudo chown -R www-data: /var/www/example.com

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

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

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

/etc/apache2/sites-available/example.com.conf

ServerName example.com ServerAlias www.example.com ServerAdmin [email protected] DocumentRoot /var/www/example.com/public_html Options -Indexes +FollowSymLinks AllowOverride All ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined ServerName example.com ServerAlias www.example.com ServerAdmin [email protected] DocumentRoot /var/www/example.com/public_html Options -Indexes +FollowSymLinks AllowOverride All ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined ServerName example.com ServerAlias www.example.com ServerAdmin [email protected] DocumentRoot /var/www/example.com/public_html Options -Indexes +FollowSymLinks AllowOverride All ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined

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

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

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

В системах Debian вы можете включить виртуальный хост, используя вспомогательный скрипт с именем a2ensite :

sudo a2ensite example.com

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

sudo ln -s /etc/apache2/sites-available/example.com.conf /etc/apache2/sites-enabled/

После того, как конфигурация включена, проверьте правильность синтаксиса, набрав:

sudo apachectl configtest

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

Syntax OK

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

sudo systemctl restart apache2

Чтобы убедиться, что все работает должным образом, откройте http://example.com в своем любимом браузере, и вы увидите что-то вроде этого:

Вывод

Из этого руководства вы узнали, как создать конфигурацию виртуального хоста Apache для размещения нескольких доменов на одном сервере Debian. Вы можете повторить те же шаги, чтобы создать дополнительные виртуальные хосты для других ваших доменов.

Apache Debian

Этот пост является частью инструкции по установке стека LAMP в серии Debian 9.

Другие посты в этой серии:

• Как установить Apache на Debian 9 • Как установить PHP на Debian 9 • Как настроить виртуальные хосты Apache на Debian 9 • Как установить MariaDB на Debian 9 • Безопасный Apache с Let's Encrypt на Debian 9