带反向代理的Domino Xpages

时间:2015-06-17 13:31:54

标签: proxy xpages lotus-domino

我遇到了带有XPages应用程序的Domino Web Server问题,该应用程序位于某个反向代理之后。问题是,代理将来自URL的所有请求(如h2tps:// organization / test_server /)转发到Domino Web Server。

这使得应用程序中的所有链接都消失了。我不知道如何解决它。

例如,登录尝试将被服务器重定向到h2tps://organization/names.nsf?登录而不是h2tps://organization/test_server/names.nsf?登录

你知道如何解决它吗?

3 个答案:

答案 0 :(得分:3)

使用反向代理时,建议保持原始网址不变。由于许多重定向,Ajax请求,cookie与URL密切相关,如果URL发生变化,几乎必须去修改代码。

这个问题在Domino中尤其严重,因为在绝对路径中会使用很多Javascript代码,例如/names.nsf。作为Java应用程序的比较,通常会使用相对路径(例如../ login)。

实现 URL不变的实际方式:将原始多米诺骨牌服务器的域名(例如test.domino.xxx)映射到反向代理服务器,并通过http HOST映射反向代理服务器标头确定转发到哪个后端服务器,而不需要添加额外的路径(例如test_server)。

在IBM WebSeal示例中,此配置称为virtual host junctions

答案 1 :(得分:1)

您是否在多米诺骨牌服务器上创建了网站文档?

答案 2 :(得分:0)

我已经通过一些努力解决了这个问题。

  1. 首先,我将数据库移动到文件夹/ test_server /中。
  2. 然后我更改了所有静态HTML链接以使用/ test_server /。
  3. 使用选项xsp.application.context.proxy = test_server我改变了 内部XPage和扩展库资源的路径。
  4. 最后,我必须在Domino上添加一些替换规则 防止像/ test_server / test_server /.
  5. 这样的重复路径

    现在它似乎运作良好。

    代理团队的提议是在Web服务器上使用url rewrite。毫无疑问,它可以用Domino完成,但需要开发一个DNSAPI Addon(一个用C语言编写的dll)。而且它并不像一个简单的任务。

    无论如何,非常感谢你的帮助!