default-ssl.conf не требует пояснений. Я предполагаю, что это значения по умолчанию, которые будут использоваться, когда его не переопределяет ни один vhost или другая конфигурация.
Но что такое файл 000-default-le-ssl.conf? Почему он так назван? Что с тройными нулями впереди? Чем он отличается / должен использоваться по-другому от default-ssl.conf? Как следует использовать оба варианта?
Независимо от того, какой файл conf, я нахожу очень мало значений по умолчанию, которые могу использовать. С несколькими доменами я не могу использовать ServerName / ServerAlias, и поскольку каждый домен имеет свой собственный каталог / порт, я также не могу использовать DocumentRoot / Proxy по умолчанию. В моем случае у меня есть сертификаты ssl, созданные для каждого домена, поэтому я также не могу использовать значения по умолчанию. Даже ServerAdmin может быть разным для каждого домена. Исходя из этого варианта использования, я должен просто оставить его почти пустым или я что-то упускаю? Что лучше всего подходит для этого сценария?
Я использую последний сервер Apache на Ubuntu 18.04.
Нули в начале имени файла просто устанавливают порядок, когда каталог сканируется, а результаты обрабатываются один за другим.
При использовании apache первый прочитанный / обрабатываемый виртуальный хост - это тот, на который клиенты отправляются, если они подключаются с запросом имени хоста, для обслуживания которого ваш сервер не настроен.
В default-le
конфигурация звучит так, как будто это та, которую LetsEncrypt может использовать для аутентификации / подтверждения, но это просто дикая догадка, основанная на наличии le
в имени файла. Чтобы знать наверняка, вам следует изучить содержание и опубликовать, если у вас есть вопросы.
Что касается значений по умолчанию и т. Д., Вы можете поделиться практически всей информацией о конфигурации или, по крайней мере, родительскими каталогами путей к файлам и т. Д.
Вот шаблон, который я использую, замените DOMAIN и YOURIP соответствующим образом.
<VirtualHost *:80>
ServerName DOMAIN
ServerAlias www.DOMAIN
RewriteEngine on
RewriteRule ^/(.*)$ https://www.DOMAIN/$1 [R,L]
</VirtualHost>
<VirtualHost YOURIP:443>
ServerName DOMAIN
ServerAlias www.DOMAIN
ServerAdmin webmaster@DOMAIN
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/DOMAIN/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/DOMAIN/privkey.pem
SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
CustomLog ${APACHE_LOG_DIR}/ssl_request_log "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
DocumentRoot /var/www-DOMAIN
<directory /var/www-DOMAIN>
Options All
AllowOverride All
Require all granted
</directory>
ErrorLog ${APACHE_LOG_DIR}/ssl-DOMAIN-error.log
CustomLog ${APACHE_LOG_DIR}/ssl-DOMAIN-access.log combined
</VirtualHost>