我该如何设置它才能正确https://anything.example.com
重定向https://example.com
?
我当前的设置如下:
http://example.com --> https://example.com
http://subdomain.example.com --> https://example.com
我的网络主机有一个 CNAME 记录,将 *.example.com 指向 example.com。
问题是我没有通配符证书,因此当用户尝试访问https://subdomain.example.com,他们遇到了这个令人愉快的页面。
这是我的配置文件:
<VirtualHost *:80>
ServerName example.com/
Redirect permanent / https://example.com/
</VirtualHost>
<VirtualHost *:443>
ServerName example.com
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
SSLEngine on
SSLCertificateFile /home/ssl.crt
SSLCertificateKeyFile /home/ssl.key
SSLCACertificateFile /home/intermediate.crt
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
Options -Indexes
</Directory>
我在 Ubuntu 14.04 上运行 Apache2。我没有使用 .htaccess 文件。
答案1
如果没有通配符证书或子域名证书,则无法实现这一点。您可以使用以下命令为每个子域名创建一个证书让我们加密不过(假设成本是问题所在)。