How to force http1.0 connections at the proxy level

For the nginx ingress controller, you can set this annotation per ingress object;

nginx.ingress.kubernetes.io/proxy-http-version: “1.0”

I’m trying to find how I could similarly set this with kong. I know I can set the global value with the values in the chart, but is there a way to set this on a per ingress object, or with a kongingress override ?

If I set this in the helm chart values file, I see these values get set on the nginx-kong.conf file in the proxy container, in their respective locations, however there is a block that is “Server → Location /” that also has a specified “proxy_http_version 1.1;” that is not changable by any var that I can find. When changed manually in the container and force a reload of /usr/local/openresty/nginx/sbin/nginx I can see my requests now get sent with HTTP1.0.

nginx_http_proxy_http_version: “1.0”
nginx_proxy_proxy_http_version: “1.0”

So it seems that Kong currently does not support setting HTTP1.0 on a per ingress, or even on the entire proxy?

There’s no way to set this per Ingress (because there’s no way to set it on the underlying Kong route). You’d want to make a feature request at Discussions · Kong/kong · GitHub

Since that directive is explicitly set in the standard template, the kong.conf overrides you mentioned won’t work. The only way to set it globally would be to build a custom image that uses a modified template.