【发布时间】:2017-06-04 11:33:15
【问题描述】:
我有一个 Ubuntu 16.04 VPS。我将 Letsencrypt 用于我的 ssl 证书,在创建或创建证书时,他们会询问您是否想要轻松或安全的访问。安全意味着无论如何它都会重定向到 https。
这适用于主页,但不适用于子域。我没有重定向到 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>
由于某种原因,它只是没有重定向。
当我转到http://luukwuijster.eu 时,我被重定向到https://luukwuijster.eu
这样可以正常工作,但是当我转到 http://school.luukwuijster.eu 时,我没有被重定向并看到与 https://luukwuijster.eu 相同的页面
当然,当我转到 https://school.luukwuijster.eu 时,我没有被重定向,但我确实看到了正确的页面。
我该如何解决这个问题?
【问题讨论】:
标签: apache .htaccess ssl vhosts lets-encrypt