Acho que há vários recursos que precisam ser carregados do seu aplicativo, portanto, example.com/catsapp
deve procurar um subdiretório. Sem uma barra final, os navegadores veem example.com/catsapp
como um recurso semelhante a um arquivo, não como um recurso semelhante a uma pasta. A seguir, o link viewer.html
relativo a example.com/catsapp
leva a example.com/viewer.html
. No entanto, resolver viewer.html
em relação a example.com/catsapp/
(observe a barra final) resolve para example.com/catsapp/viewer.html
.
Sugiro redirecionar example.com/catsapp
para example.com/catsapp/
(não internamente, mas via HTTP 3xx) e editar sua regra ProxyPass
para incluir também a barra final. Por exemplo:
Redirect permanent /catsapp /catsapp/
ProxyPass /catsapp/ http://catsapp-server/ timeout=600
ProxyPassReverse /catsapp/ http://catsapp-server/ timeout=600