title: Why does GCE Load Balancer behave differently through the domain name and the IP address?
body: <p>A backend service happens to be returning Status 404 on the health check path of the Load Balancer. When I browse to the Load Balancer's domain name, I get "Error: Server Error/ The server encountered a temporary error", and the logs show </p>
  
  <p><code>"type.googleapis.com/google.cloud.loadbalancing.type.LoadBalancerLogEntry" 
    statusDetails: "failed_to_pick_backend"</code>, which makes sense.</p>
  
  <p>When I browse to the Load Balancer's Static IP, my browser shows the 404 Error Message which the underlying Kubernetes Pod returned, In other words   the Load Balancer passed on the request despite the failed health check.  </p>
  
  <p>Why these two different behaviors?</p>
  
  <p>[Edit]</p>
  
  <p>Here is the yaml for the Ingress that created the Load Balancer:</p>
  
  <pre><code>apiVersion: extensions/v1beta1
  kind: Ingress
  metadata:
    name: ingress1
  spec:
    rules:
    - host: example.com
      http:
        paths:
        - backend:
            serviceName: myservice
            servicePort: 80
  </code></pre>