我处于必须使用HTTPS的情况。 (chrome决定在HTTP中停止getUserMedia。)
问题是,是否可以分配通配符域? 这是我的一些网站
1 test.nfgold.me
1 slave.nfgold.me
3 *.nfgold.me
目前没有使用 HTTPS ,我在我的nginx中有以下配置:
server {
server_name *.nfgold.me;-
charset utf-8;
.....
}
这一切都有效。
我在我的一些项目中使用过letsencrypt,但目前似乎没有使用外卡?
我尝试了以下配置,但它不起作用:
server {
server_name .nfgold.me;
rewrite ^ https://*.nfgold.me$request_uri? permanent;
}
server {
server_name .nfgold.me;
rewrite ^ https://*.nfgold.me$request_uri? permanent;
}
server {
listen 443;
server_name *.nfgold.me;-
charset utf-8;
ssl on;
ssl_certificate /etc/letsencrypt/live/nfgold.me/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/nfgold.me/privkey.pem;
....
}
有替代方案吗?任何建议。
答案 0 :(得分:2)
有替代方案吗?任何建议。
虽然Let's Encrypt没有为您提供通配符证书,但您可以拥有包含多个子域的证书。来自their FAQ:
我可以获得多个域名证书(SAN证书或UCC证书)吗?
是的,同一证书可以使用主题备用名称(SAN)机制包含多个不同的名称。
当然,您可以在其他地方购买通配符证书,即许多CA提供这些证书。
答案 1 :(得分:1)
我尝试创建一个详细的帖子,解释如何创建通配符认证。希望这篇文章能帮到你:
sudo certbot certonly \
--cert-name mydomain.com \
--dns-digitalocean \
--dns-digitalocean-credentials ~/.secrets/do_token.ini \
--server https://acme-v02.api.letsencrypt.org/directory \
-d "*.mydomain.com" \
-d mydomain.com \
-i nginx
答案 2 :(得分:0)
在加密时使用通配符子域尝试此操作,使用DNS验证。
sudo certbot -d *.example.com --manual --preferred-challenges dns certonly
此后,您必须手动将证书路由添加到服务器块。