Comments (12)
/remove-kind bug
- show the output of
"kubectl -n ingress-nginx get cm ingress-nginx-controller -o yaml"
- I wonder if that header can be managed by https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/configmap/#proxy-set-headers
from ingress-nginx.
# kubectl -n myns get cm nginx-ingress-ingress-nginx-controller -o yaml
apiVersion: v1
data:
allow-snippet-annotations: "false"
proxy-set-headers: myns/nginx-ingress-ingress-nginx-custom-proxy-headers
kind: ConfigMap
metadata:
annotations:
meta.helm.sh/release-name: nginx-ingress
meta.helm.sh/release-namespace: myns
creationTimestamp: "2024-02-29T06:00:51Z"
labels:
app.kubernetes.io/component: controller
app.kubernetes.io/instance: nginx-ingress
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
app.kubernetes.io/version: 1.9.6
helm.sh/chart: ingress-nginx-4.9.1
name: nginx-ingress-ingress-nginx-controller
namespace: myns
resourceVersion: "11272346"
uid: bae7c8c0-ac7f-474f-9dff-dce93af6661a
# kubectl -n myns get cm nginx-ingress-ingress-nginx-custom-proxy-headers -o yaml
apiVersion: v1
data:
X-Forwarded-Proto: ""
kind: ConfigMap
metadata:
annotations:
meta.helm.sh/release-name: nginx-ingress
meta.helm.sh/release-namespace: myns
creationTimestamp: "2024-02-29T06:00:51Z"
labels:
app.kubernetes.io/component: controller
app.kubernetes.io/instance: nginx-ingress
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
app.kubernetes.io/version: 1.9.6
helm.sh/chart: ingress-nginx-4.9.1
name: nginx-ingress-ingress-nginx-custom-proxy-headers
namespace: myns
resourceVersion: "11272345"
uid: 1fe1c0e2-d431-4898-9055-e88575f50f78
from ingress-nginx.
What I tested and found out is that the configMap is for adding new and customized headers but not for changing the default headers.
from ingress-nginx.
I have very little know on this topic but I found that this header is actually a factual info that is sent to the upstream (backend pod) . https://www.nginx.com/resources/wiki/start/topics/examples/forwarded/#using-the-forwarded-header
So in that context, why would you want to set this manually ? Its does not seem plausible that you make a HTTPS request to the cluster but you want to tell the backend pod that its GRPC or anything other than HTTPS !
To the layman reader here, please explain what is the real problem you want to solve by setting "X-Forwarded-Proto"
header manually . Thanks
from ingress-nginx.
/triage needs-information
from ingress-nginx.
One of our product URL is behaving different and causing too many redirects (recursively redirecting) if X-Forwarded-Proto is available in the request URL. Hence, we tried to remove this header and not able to achieve with NGINX. But we could modify and set accordingly with Traefik based ingress controller using customRequestHeaders.
from ingress-nginx.
- I think we need a nginx expert to comment
- If you meant you tried with vanilla non-kubernetes nginx and it wa not possible, then highly likely that not possible in ingress-nginx controller as well
- Will keep google searching if nginx vanilla non-kubernetes was done or documented by someone
from ingress-nginx.
After reading this https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-Proto I am convinced you can not change it, in the context of saying your browser connects with HTTPS scheme but you change it manually to HTTP. If traefik changes it, I wonder how it impacts upstream getting false info. But like I said I am not a expert so wait for someone to comment
from ingress-nginx.
/remove-triage needs-information
/help
from ingress-nginx.
@longwuyuan:
This request has been marked as needing help from a contributor.
Guidelines
Please ensure that the issue body includes answers to the following questions:
- Why are we solving this issue?
- To address this issue, are there any code changes? If there are code changes, what needs to be done in the code and what places can the assignee treat as reference points?
- Does this issue have zero to low barrier of entry?
- How can the assignee reach out to you for help?
For more details on the requirements of such an issue, please see here and ensure that they are met.
If this request no longer meets these requirements, the label can be removed
by commenting with the /remove-help
command.
In response to this:
/remove-triage needs-information
/help
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.
from ingress-nginx.
/kind support
/triage accepted
from ingress-nginx.
/assign
from ingress-nginx.
Related Issues (20)
- Bug: Helm chart doesn't have replicas exposed HOT 3
- ArgoCD installation results in "Failed to unmarshal "values.yaml": <nil>" HOT 8
- TLS certificate lookup fails for server aliases unless specified host is loaded at least once HOT 5
- helm chart: upgrade with the same value (ipFamilyPolicy=RequireDualStack) not possible HOT 13
- Could not disable Opentelemetry. HOT 2
- location priority with rewrite-target HOT 8
- Updating GeoIP2 data outputs many logs of "File changed detected. Reloading NGINX" HOT 1
- All ingress controllers restart at the same time on configuration change HOT 7
- Any version upgrade sets allow-snippet-annotations to false even if upgrading from > 1.9.0 HOT 10
- canary doesn't work HOT 8
- Getting unknown directive "root" when trying to add configuration to serve content from specific directory HOT 5
- Load balancer IP cleared from all ingresses when upgrading nginx-ingress-controller HOT 7
- Error retrieving resource lock ingress-nginx/ingress-controller-leader HOT 5
- Currently, the server code snippet is used to determine the user agent to jump to. Strangely, it did not take effect. HOT 7
- Performance Issue: Ingress creation in a cluster with many existing ingresses get slow admission webhook response HOT 11
- Ingress nginx controller changed load balancer when updating managed nodegroups AWS EKS HOT 4
- GRPC GOAWAY HOT 7
- Adapt the nginx.org/rewrites from the official nginxinc helm chart HOT 10
- Nginx ingress(v1.1.0) crashed HOT 4
- port 443 endpoint intermittent timeout HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ingress-nginx.