несколько включаемых файлов в apache virtualhost

У меня куча доменов, и мой клиент хочет, чтобы www также был доступен.

Я сделал два текстовых файла. Тот, который начинается с ServerAlias ​​и доменных имен и еще один текстовый файл, который начинается с ServerAlias ​​и доменных имен www.

Каждый текстовый файл представляет собой одну длинную строку.

Проверил синтаксис configtest, apache говорит: ОК Команда -t Сбросить виртуальные хосты, и все псевдонимы загружены правильно.

В браузере нет доступа ни к одному www.domains.com

<VirtualHost *:80>
ServerName sale.com
Include /etc/apache2/sites-available/sale.com-domainlist.txt
Include /etc/apache2/sites-available/sale.com-domainlistwww.txt
DocumentRoot /var/www/sale.com
<Directory /var/www/sale.com>
Options -Indexes +FollowSymLinks AllowOverride All
</Directory>
</VirtualHost>

Включаемые файлы

domainlist.txt

ServerAlias sale1.com sale2.com fail.com

domainlistwww.txt

ServerAlias www.sale1.com www.sal2.com www.fail2.com

Частичный файл дампа vhost с сервера

(/etc/apache2/sites-enabled/000-default.conf:1)
     port 80 namevhost sale.com (/etc/apache2/sites-enabled/sale.com.conf:1)
             alias sale1.com
             alias sale2.com
             alias fail.com
             alias fail2.com
             alias www.sale1.com
             alias www.sale2.com
             alias www.fail.com
             alias www.fail2.com
port 80 namevhost mypersonalwebsite.com (/etc/apache2/sites-enabled/mypersonalwebsite.com.conf:2)
             alias www.mypersonalwebsite.com
0
задан 14 June 2019 в 00:15
1 ответ
<VirtualHost *:80>
ServerName sale.com
Include /etc/apache2/sites-available/sale.com-domainlist.txt
Include /etc/apache2/sites-available/sale.com-domainlistwww.txt
DocumentRoot /var/www/sale.com
<Directory /var/www/sale.com>
Options -Indexes +FollowSymLinks AllowOverride All
</Directory>
</VirtualHost>

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

Каждый включаемый файл начинается с ServerAlias, и все домены должны быть разделены только пробелом.

В настройках DNS моего клиента не учитывался www. который является субдоменом. Мы использовали запись A для доменов с подстановочными знаками в настройках DNS их регистратора. пример:

* IN 45.65.35.76

NAME * ЗНАЧЕНИЕ 45.65.36.76

Звездочка, очевидно, позволяет вам иметь несколько поддоменов без необходимости делать отдельную запись CNAME для каждого.

0
ответ дан 23 November 2019 в 23:24

Теги

Похожие вопросы