https://medium.com/@gokulc/setting-up-nginx-ingress-on-kubernetes-2b733d8d2f45
In the tutorial, we set up a default backend using an image from `gcr.io/google_containers/defaultbackend:1.0` - this service exposes a /healthz endpoint that returns a 200, a / endpoint that returns 404.
Finally, we add an Ingress that directs traffic a a domain, say example.com, to a Deployment which is running an application that has exactly one route: /:name
When it is all said and done, I can access example.com/:name and indeed, my request is routed to the deployment.
If I load example.com/ i get the 404 page.
If I load example.com/:name:/randomstring, i get the 404 page of the default backend.
Why would I ever want that functionality? Any Deployment that is running in the cluster and using the Ingress should be capable of returning a 404 for a route that isn't in the app's internal route table.
I want to replace the hello-world service with own image, a web server that actually does return stuff on the / route. And more importantly, if a user loads a route that doesn't exist, I do NOT want that request routed the backend. My service logs 404 requests and shows a 404 page. Do a still want a default backend? Why? How do I have the default backend not highjack my / route and my 404s?
Very confused. I appreciate any help. Thanks.