HTTPS not working with kong-ingress

When I try to change the protocol in CLB in AWS to https for attaching the certificate it gives an error of 400 bad request- plain http request was send to https when I try to hit kong.
While it works perfectly fine with tcp protocol on 80 and 443 both.

You probably have a typo here. The error must be that the request is being sent from http to https port. If you are terminating TLS at LB, then make sure that you either:

  • configure LB to send requests from https port to http port in kong
  • configure LB to send requests to https port of Kong but make sure that the protocol configured in ALB for this is https and not http.

Yes there was a typo, sorry for that.
Sorry I didn’t metion that I am using kong-ingress in EKS.
The kong-ingress loadbalancer is showing as a classic load balancer in aws console.
I was trying to change the setting in the helm chart and even directly in console but no luck.

@hbagdi can you help?

Okay got it resolved by changing the https port on the elb to redirect to the http port of kong.
Before this it used to redirect to the https port of kong, but on checking with kong I got to know kong-ingress doesn’t support https right now.
So I added the annoatation from here-
https://kubernetes.io/docs/concepts/services-networking/service/
Then i just changed the https to be redirected to http and volla it started working.

Glad you were able to figure this out.

but on checking with kong I got to know kong-ingress doesn’t support https right now.

That is not the case. Kong does support HTTPS.


© 2019 Kong Inc.    Terms  •  Privacy  •  FAQ