我有以下配置的nginx.conf。
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_connect_timeout 65;
proxy_send_timeout 65;
proxy_read_timeout 300;
proxy_buffers 4 256k;
proxy_buffer_size 128k;
proxy_busy_buffers_size 256k;
large_client_header_buffers 8 64k;
client_header_buffer_size 64k;
client_max_body_size 1024m;
server {
listen 443 ssl;
server_name server1.com;
ssl_certificate /etc/nginx/ssl/server1.com.crt;
ssl_certificate_key /etc/nginx/ssl/server1.com.key;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
proxy_ssl_session_reuse on;
proxy_ssl_protocols TLSv1.2;
rewrite_log on;
proxy_cache_bypass $http_cache_control;
proxy_ignore_headers "Set-Cookie";
add_header X-Proxy-Cache $upstream_cache_status;
location / {
location = /robots.txt {
add_header Content-Type text/plain;
return 200 "User-agent: *\nDisallow: /\n";
}
location ~ ^/(files/app) {
proxy_pass http://server1.com:31111;
}
proxy_pass https://server2.com;
}
}我想转移我的nginx配置到kubernetes入口-nginx ingress.yml。是否有一种使用kubernetes侵入资源实现此配置的方法?
这是我的ingress.yml,当然没有工作,点击url,https://server1.com/files/app进入多个重定向,最后抛出502坏网关。
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
annotations:
kubernetes.io/ingress.class: nginx
meta.helm.sh/release-name: my-service
meta.helm.sh/release-namespace: default
generation: 1
labels:
app.kubernetes.io/managed-by: Helm
name: my-service
namespace: default
selfLink: /apis/extensions/v1beta1/namespaces/default/ingresses/my-service
spec:
rules:
- host: server1.com
http:
paths:
- backend:
serviceName: my-service
servicePort: 31111
path: /files/app
pathType: ImplementationSpecific发布于 2022-01-07 06:36:16
解决方案是从httpd.conf中删除条目。我的服务直接绕过了请求,但我也在httpd中提供了这些条目,因为它在内部循环。就入境规则而言。在我从httpd.conf中删除相关规则之后,上面的配置工作得很好。
https://stackoverflow.com/questions/70314337
复制相似问题