我已经尝试了其他相关解决方案,但似乎无法正常工作,并且我确定这只是一个命名空间问题,因为这是我第一次使用ConfigMaps,但是有人可以帮助我解决为什么这不起作用吗?
这是我的入口:
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
name: brushfire-ingress
labels:
helm.sh/chart: brushfire-0.1.0
app.kubernetes.io/name: brushfire
app.kubernetes.io/instance: brushfire
app.kubernetes.io/version: "1.16.0"
app.kubernetes.io/managed-by: Helm
annotations:
cert-manager.io/cluster-issuer: brushfire-issuer
kubernetes.io/ingress.class: nginx
nginx.ingress.kubernetes.io/force-ssl-redirect: "true"
nginx.ingress.kubernetes.io/rewrite-target: /$1
nginx.ingress.kubernetes.io/ssl-redirect: "true"
spec:
tls:
- hosts:
- "brushfire.online"
- "*.brushfire.online"
secretName: tls-secret
rules:
- host: "brushfire.online"
http:
paths:
- path: /(.*)
backend:
serviceName: brushfire
servicePort: 80
- host: "*.brushfire.online"
http:
paths:
- path: /(.*)
backend:
serviceName: brushfire
servicePort: 80
并且此安装为随--namespace jorin-ssl
一起安装的舵图的一部分
我尝试过的ConfigMap是:
kind: ConfigMap
apiVersion: v1
metadata:
labels:
app: brushfire-ingress
name: nginx-configuration
namespace: ingress-nginx # I've also tried `jorin-ssl`
data:
hsts: "false"
但是最后,HSTS似乎总是在那里:
$ curl -s -D- https://brushfire.online/ | grep -i Strict
返回
strict-transport-security: max-age=15724800; includeSubDomains
为了简单起见,我很乐意完全不使用ConfigMap。有没有办法像我们对force-ssl-redirect
等所做的那样使用注释?
ConfigMap的名称必须与nginx-ingress控制器进程正在查找的名称匹配。