A configuração é assim. Eu tenho um domínio, por exemplo, example.com
configurei o Apache2 com um VirtualDocumentRoot, dessa forma posso apontar um subdomínio para uma pasta específica de maneira fácil:
Arquivo sites-available/websites.conf:
ServerName example.com
ServerAlias *.example.com
VirtualDocumentRoot /var/www/websites/%1/
<Directory /var/www/websites/%1/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
Então, quando você visita, test.example.comele procura testa pasta no diretório de sites e a exibe.
Isso funciona conforme o esperado, mas eu queria usar o Let's Encrypt para SSL. Que ainda não pode lidar com certificados curinga. Como eu resolveria esse problema?
Situação atual:
Instalado, vamos criptografar certificados com:sudo certbot --apache -d example.com -d admin.example.com -d www.example.com
Arquivo: sites-available/000-default.conf:
DocumentRoot /var/www/websites/current/
<Directory /var/www/websites/current/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
<IfModule mod_dir.c>
DirectoryIndex index.php index.pl index.cgi index.html index.xhtml index.htm
</IfModule>
# Let's Encrypt Redirect
RewriteEngine on
RewriteCond %{SERVER_NAME} =example.com
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
Todos os subdomínios ainda são redirecionados para https. Apenas topdomain example.come admin.example.comdeve www.example.comser https.
Responder1
O problema é que você não definiu o escopo de nenhuma configuração de maneira específica do site.
É importante observar que os arquivos de configuração separados "por site" não são realmente um recurso httpd do Apache. É apenas uma convenção (relativamente comum) para conveniência administrativa que no final usa uma Includediretiva no arquivo de configuração principal para mesclar tudo em uma única configuração quando a configuração é carregada.
Normalmente, esses arquivos de configuração separados têm todo o seu conteúdo dentro VirtualHostdo escopo de seus efeitos, mas você parece ter apenas uma configuração global, incluindo seus redirecionamentos de http para https.
Responder2
Tentando criar certificados do servidor
certbot certonly -d *.example.com -d admin.example.com -d www.example.com
Wildcard domains are not supported: *.example.com


