Para entender que tipo de solicitação enviamos o mercurial - temos o tcpdump perfeito.
Eu começo o tcpdump, clico do hg link
e veja que hg pede GET / hg? cmd = capacidades, / hg? cmd = getbundle, / hg? cmd = lote
Eu acho que você pode coletar todos os pedidos necessários para hg e configurar o apache (ou nginx, ou algum outro proxy) para encaminhar tais solicitações para hgweb.cgi