<p>Due to some legacy application that relies on Host header to function correctly, I need to have an Ingress (proxy, etc) that capable of rewrite Host header and pass that to downstream (backend). Is there any Ingress Controller that supports this functionality?</p>

<p>Example:</p>

<p>End user access our website through <code>foo.com/a</code> for backend <code>a</code> and <code>foo.com/b</code> for backend <code>b</code>. But since <code>a</code> and <code>b</code> are legacy app, it only accept:</p>

<ul>
<li><code>a</code> accepts connection when <code>Host: a.foo.com</code></li>
<li><code>b</code> accepts connection when <code>Host: b.foo.com</code></li>
</ul>

Agung Pratama
<p>This can be done using this annotation: <code>nginx.ingress.kubernetes.io/upstream-vhost: host.example.com</code></p>
