Você poderia usar url.rewrite-once
para prefixar todas as solicitações em m.my-site.at
com /mobile
:
$HTTP["host"] == "m.my-site.at" {
url.rewrite-once = ( ".*" => "/mobile$0" )
proxy.server = (...)
}
Talvez seja necessário carregar mod_rewrite
antes de mod_proxy
para que isso funcione.
O problema com as reescritas é que o backend agora vê um caminho que não corresponde à visão dos navegadores. O backend pode tentar emitir caminhos prefixados com /mobile
ou confundir coisas com caminhos relativos. Alguns proxies podem tentar corrigir esses caminhos nas respostas, mas o lighttpd não tenta (e você nunca pegará todos eles).
A solução real é fazer com que o backend entenda vhosts - ou seja, manipule pedidos diferentes com base no nome do host. Se o backend não puder fazer isso, você pode querer executar várias instâncias, sim.