使用裸域名 及 nginx ingress 实现 301 重定向

230 阅读1分钟

裸域名

裸域名是当用户输入URL时可以不输入 www. 4 个字符,可以提升用户体验,同时链接显示也更加简洁。 比如:twitter (twitter.com)、[掘金](juejin.cn/) (juejin.cn/)、[思否](segmentfault.com/) (segmentfault.com/) 等。

实现裸域名

要实现裸域名,需要将原先的www域名重定向到裸域名。

在ingress.yaml文件增加annotations

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  ...
  annotations:
    nginx.ingress.kubernetes.io/ssl-redirect: "True"
    nginx.ingress.kubernetes.io/configuration-snippet: |
      if ($host = 'www.abc.com' ) {
        rewrite ^ https:/abc.com$request_uri permanent;
      }
  ...