1

我有一个 bonita 门户应用程序在 apache 反向代理 (2.4) 后面的 Tomcat 环境中运行。

我的虚拟主机中的当前配置适用于https://www.mybonita.com/bonita/之类的 url :

ProxyPass         /bonita  http://localhost:8080/bonita
ProxyPassReverse  /bonita  http://localhost:8080/bonita

我现在想做的是使其与以下网址一起使用: https://www.mybonita.com/或至少https://www.mybonita.com/myapp/

我做了这个新配置

ProxyPass         /myapp http://localhost:8080/bonita
ProxyPassReverse  /myapp http://localhost:8080/bonita

但它给了我“在此服务器上找不到请求的 URL /bonita/”。

所以我修改为:

    ProxyPass         /myapp/  http://localhost:8080/bonita/
    ProxyPassReverse  /myapp/  http://localhost:8080/bonita/

那更好,我可以看到登录页面,但网址就像: https ://www.mybonita.com/bonita/login.jsp?redirectUrl=%2Fbonita%2Fportal%2Fhomepage 然后当我想登录时,我有一个 404 错误页面....

然后,我尝试添加这一行

ProxyPassReverse  /myapp  /bonita

起初看起来更好(不再出现 404 错误......一个没有 'bonita' 的网址)......但我无法登录......页面总是进入登录页面,没有特定的错误消息.. .

那么,让 Bonita 门户在具有个性化 URL 的 apache 反向代理后面工作的正确配置是什么?

4

1 回答 1

1

我是这样做的:

RewriteEngine  on
RewriteRule    "^(?!/bonita)(.*)$"  "/bonita$1" [R,L]
RewriteRule    "^/(.*)"  "http://127.0.0.1:8080/$1" [P]
ProxyPassReverse "/" "http://127.0.0.1:8080/"
于 2018-10-20T14:40:16.550 回答