首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Nginx用SSL重定向两个域,包括www。

问Nginx用SSL重定向两个域,包括www。
EN

Server Fault用户
提问于 2018-08-21 16:12:41
回答 1查看 110关注 0票数 0

我有域的.com和.co.uk版本。我希望这些(包括www子域)的每个组合都能重定向到https .co.uk版本。

我所说的每一个组合都意味着以下所有内容都应该重定向到https://example.co.uk。

代码语言:javascript
复制
http://example.com
https://example.com
http://www.example.com
https://www.example.com
http://example.co.uk
http://www.example.co.uk
https://www.example.co.uk

我认为我已经在以下几个方面取得了很大的成就:

代码语言:javascript
复制
server {
  listen 443 ssl http2;
  server_name example.co.uk;

  ssl_certificate /etc/letsencrypt/live/example.co.uk/fullchain.pem;
  ssl_certificate_key /etc/letsencrypt/live/example.co.uk/privkey.pem;
  include /etc/letsencrypt/options-ssl-nginx.conf;
  ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;

  root /var/www/example.co.uk;
  index index.html;
}

server {
  listen 80;
  server_name example.co.uk;
  return 301 https://example.co.uk$request_uri;
}

server {
  listen 443 ssl;
  server_name www.example.co.uk;
  return 301 https://example.co.uk$request_uri;
}

server {
  listen 80;
  server_name www.example.co.uk;
  return 301 https://example.co.uk$request_uri;
}

server {
  listen 443 ssl;
  server_name example.com;
  return 301 https://example.co.uk$request_uri;
}

server {
  listen 80;
  server_name example.com;
  return 301 https://example.co.uk$request_uri;
}

server {
  listen 443 ssl;
  server_name www.example.com;
  return 301 https://example.co.uk$request_uri;
}

server {
  listen 80;
  server_name www.example.com;
  return 301 https://example.co.uk$request_uri;
}

唯一的问题是,当我尝试https://example.com或https://www.example.com时,它会给我一个浏览器隐私错误页面。

是否需要为两个域和两个www子域获得单独的SSL证书才能使此设置工作?所以我最终会拿到4张证书?

EN

回答 1

Server Fault用户

回答已采纳

发布于 2018-08-21 16:38:53

最简单的方法是获得一个与所有域名匹配的证书。证书可以匹配多个名称,它被称为Subject Alternative name (SAN)。

您可以免费获得这样的证书,让我们加密,您只需安排对所有域名的验证。

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/927374

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档