Apache 使用自签名证书,从浏览器请求时 www 子域名挂起

Apache 使用自签名证书,从浏览器请求时 www 子域名挂起

我使用以下方法创建了一个具有自签名证书的临时站点:

mkdir /etc/ssl/wildcard.yourdomain.com
cd /etc/ssl/wildcard.yourdomain.com/
openssl genrsa 2048 > host.key
openssl req -new -x509 -nodes -sha1 -days 3650 -key host.key > host.cert

openssl x509 -noout -fingerprint -text < host.cert > host.info
cat host.cert host.key > host.pem
chmod 400 host.key host.pem

sudo a2enmod ssl
sudo service apache2 restart

<VirtualHost *:443>

SSLEngine On
SSLCertificateFile /etc/ssl/wildcard.yourdomain.com/host.pem
SSLCertificateKeyFile /etc/ssl/wildcard.yourdomain.com/host.key

(从http://blog.justin.kelly.org.au/how-to-create-self-signed-wildcard-ssl-certificates-for-apache/

我遇到的问题是 *.yourdomain.com 处于挂起状态。

我设立

ServerAlias www.yourdomain.com

ServerName yourdomain.com

当我导航到“yourdomain.com”时,它可以按预期工作。

但是当我输入:https://www.yourdomain.comchromium 在右下角显示“正在建立安全连接”,

我启用了 mod_ssl 调试级别日志记录,但当我使用 键入 url 时,没有任何记录www。我的最终目标是重定向www到我的根域https://yourdomain.com。 任何帮助将不胜感激。

我正在使用 namecheap 的免费动态 DNS:

Hostname,  IPADDRESS URL,         RECORD TYPE, TTL

@          m.y.i.p                A Address    1800
www        https://yourdomain.com URL Redirect 1800

SUb Domain SEttings:
*          https://yourdomain.com URL Redirect 1800

对于子域名设置,我也尝试过https://*.yourdomain.com

谢谢

答案1

DNS 提供商的名称服务器中的 URL 重定向配置不适用于 SSL。

这种重定向的实现实际上意味着提供商在该名称上配置了一个 A 记录,该记录指向他们的服务器,然后发送 HTTP 重定向。

发送重定向的服务器无法获得您域名的有效 SSL 证书,因此它们仅监听 HTTP - HTTPS 连接将始终失败。

您的服务器需要直接为名称提供 HTTPS 连接www(然后如果需要则发送重定向) - 将名称记录更改wwwACNAME指向您的服务器(如果是CNAME,则将其指向yourdomain.com.)。

相关内容