Неправильный сертификат Let's Encrypt загружается в Apache 2.4 - PullRequest
0 голосов
/ 09 января 2019

У меня есть сервер с большим количеством vhosts на них в большом количестве различных файлов и местоположений. Один и только один дает проблемы. У сотен других (почти идентичных) все в порядке.

Сайт www.customer.be загружается нормально, включая правильный сертификат. Версия без www загружает сертификат dashboard.example.com (первый файл vhost, загружаемый apache2).

Что еще более странно, это то, что единственное, что делает не-www-версия, это перенаправление на www-версию. Если вы продолжаете в любом случае в браузере, перенаправление происходит правильно.

Это файл (фактические имена доменов изменены), имейте в виду, есть сотни из них, все идентичные, кроме доменов:

<VirtualHost *:80>
    ServerName customer.1.example.net
    Redirect / https://www.customer.be/
</VirtualHost>

<VirtualHost *:80>
    ServerName www.customer.be
    Redirect / https://www.customer.be/
</VirtualHost>

<VirtualHost *:80>
    ServerName customer.be
    Redirect / https://www.customer.be/
</VirtualHost>

<VirtualHost *:443>
    ServerName customer.be

    SSLEngine on
        SSLCertificateFile "/var/www/1.example.net/letsencrypt/certs/www.customer.be/fullchain.pem"
        SSLCertificateKeyFile "/var/www/1.example.net/letsencrypt/certs/www.customer.be/privkey.pem"

    Redirect / https://www.customer.be/
</VirtualHost>

<VirtualHost *:443>
    ServerName www.customer.be

    DocumentRoot /var/www/1.example.net/platform/

    <Directory /var/www/1.example.net/platform/>
            AllowOverride All
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

    SSLEngine on
        SSLCertificateFile "/var/www/1.example.net/letsencrypt/certs/www.customer.be/fullchain.pem"
        SSLCertificateKeyFile "/var/www/1.example.net/letsencrypt/certs/www.customer.be/privkey.pem"
</VirtualHost>

Это тот, с которого загружается сертификат (это первый загружаемый apache2):

<VirtualHost *:80>
    ServerName dashboard.example.com
    Redirect / https://dashboard.example.com/
</VirtualHost>

<VirtualHost *:80>
    ServerName dashboard.example.be
    Redirect / https://dashboard.example.com/
</VirtualHost>

<VirtualHost *:443>
    ServerName dashboard.example.com

    DocumentRoot /var/www/dashboard/

    <Directory /var/www/dashboard/>
            AllowOverride All
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

    SSLEngine on
        SSLCertificateFile "/etc/dehydrated/certs/dashboard.example.com/fullchain.pem"
        SSLCertificateKeyFile "/etc/dehydrated/certs/dashboard.example.com/privkey.pem"
</VirtualHost>

Следующий

...