Apache / Letsencrypt – redirect到https不能在子域上工作

我有一个Ubuntu 16.04 VPS。 我使用Letsencrypt为我的SSL证书创build或创build证书时,他们问你是否想要简单或安全的访问。 安全意味着它将redirect到https,无论如何。

这在主页上工作,但它不能在子域上工作。 我没有redirect到https,我只是看到我的index.html什么只是Apache的默认页面。

那么我该如何解决这个问题呢?

我的虚拟主机

<VirtualHost *:80> ServerName school.luukwuijster.eu Redirect / https://school.luukwuijster.eu ServerAdmin webmaster@localhost DocumentRoot /var/www/html/school.luukwuijster.eu/public/ <Directory /var/www/html/school.luukwuijster.eu/public/> AllowOverride All Require all granted </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined RewriteEngine on RewriteCond %{SERVER_NAME} =school.luukwuijster.eu RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,QSA,R=permanent] </VirtualHost> 

LE-SSL:

 <IfModule mod_ssl.c> <VirtualHost *:443> ServerName school.luukwuijster.eu ServerAdmin webmaster@localhost DocumentRoot /var/www/html/school.luukwuijster.eu/public/ <Directory /var/www/html/school.luukwuijster.eu/public/> AllowOverride All Require all granted </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined RewriteEngine on RewriteCond %{SERVER_NAME} =school.luukwuijster.eu # Some rewrite rules in this file were were disabled on your HTTPS site, # because they have the potential to create redirection loops. # RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,QSA,R=permanent] SSLCertificateFile /etc/letsencrypt/live/luukwuijster.eu-0003/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/luukwuijster.eu-0003/privkey.pem Include /etc/letsencrypt/options-ssl-apache.conf </VirtualHost> </IfModule> 

由于某种原因,它只是不redirect。

当我去http://luukwuijster.eu时,我被redirect到https://luukwuijster.eu

所以这工作正常,但是当我去http://school.luukwuijster.eu我没有redirect,并看到相同的页面上https://luukwuijster.eu

当然,当我去https://school.luukwuijster.eu我没有redirect,但我看到正确的页面。

我如何解决这个问题?