对于你如何连接 Synchrony 是与你的环境有关的。我们知道绝大部分的 Confluence 站点是运行在反向代理后面的,同时还使用了 SSL。这里是帮助你在你环境中识别正确的配置的一些信息和一些针对你环境需要做的一些协同合作方面的修改。
SSL
Synchrony 运行在一个独立的 JVM,这个并不需要支持直接的 HTTPS 连接。如果你没有使用反向代理,SSL 应该在 Tomcat 中定义,如果你使用了方向代理或者负载均衡。那么 SSL 应该在你的反向代理和负载均衡中进行配置和定义。
Proxies
在下面的图表中,我们使用 Confluence 运行的环境下通常的代理和反向代理配置,同时 Confluence 也运行在 /confluence 上下文路径,(例如, www.mysite.com/confluence)。如果你的 Confluence 没有使用上下文,那么这个概念和配置也是一样的(例如,www.myconfluence.com)。
下面的配置只是特定于 Confluence 服务器,如果你使用的是数据中心,请参考 Configuring Synchrony for Data Center 页面中的内容来获得更多信息。
没有反向代理
如果你没有在 Confluence 中使用反向代理,那么你的会通过 Confluence 的内部 Synchrony 代理连接到 Synchrony。如果使用了 SSL 的话,那么这个是通过 Tomcat 决定的。这个是默认的配置,针对这个情况你在启用协同编辑的时候不需要进行任何进一步的修改。
使用一个反向代理
如果你的 Confluence 是运行在一个反向代理后面的话,你需要通过 Confluence 内部 Synchrony 代理来连接 Synchrony 。这个是反向代理的默认设置,如果你不希望开发 8091 端口的话,这个也是一个很好的选择。SSL 应该通过你的额反向代理服务器来配置和确定。
针对 Synchrony 配置你不需要做任何进一步的反向代理配置,但是在最好的情况下,你的反向代理应该支持 WebSocket 连接(你需要在你的代理中手动启动这个)。
为了告诉 Confluence 你希望使用内部代理,设置 synchrony.proxy.enabled
system property 中的配置设置为 true
。(这个是可选的,但是这个可以避免 Confluence 在通过内部代理之前来通过 /synchrony 来找到 synchrony)。
如果 Synchrony 不能访通过 /synchrony-proxy 进行访问,我们将会自动的尝试 /confluence/synchrony-proxy (/confluence 是你 Confluence 的上下文)。
Synchrony 使用一个反向代理目录
如果你的 Confluence 是运行在一个反向代理的后面,但是你在通过 Confluence 的内部 Synchrony 代理进行连接的时候遇到了问题或者无法连接的情况,你可以选择连接目录到 Synchrony。这个是最佳的设置,但是不需要你环境做一些改变。你需要打开 8091 端口,同时添加 /synchrony 到你的反向代理配置中。SSL 还是通过你反向代理服务器决定和定义的,Synchrony 还不能接受 HTTPS 的连接。
如果 Synchrony 不能访通过 /synchrony-proxy 进行访问,我们将会自动的长沙 /confluence/synchrony-proxy (/confluence 是你 Confluence 的上下文)。
下面的一些指南是有关反向代理的配置相关的一些文章。目录的顺序是很重要的,请查看我们的一些示例。
-
- Using Apache with mod_proxy
- Running Confluence behind NGINX with SSL
- Proxying Atlassian server applications with Apache HTTP Server (mod_proxy_http)
- Proxying Atlassian server applications with Microsoft Internet Information Services (IIS)
- How to configure Amazon Web Service Elastic Load Balancer with Confluence 6.0
XHR fallback
当一个通过通过 WebSocket 连接到 Confluence 的时候,我们将会返回一个 XML HTTP Request (XHR),这个能够允许用户成功的对页面进行编辑。为了让用户获得最佳的编辑体验,我们强烈建议你在你的环境中配置允许 WebSocket 连接。
XHR fallback 在默认的情况下是启用的,但是必要的话,可以通过 system property 进行禁用。你应该不需要对这些进行修改。
https://www.cwiki.us/display/CONF6ZH/Administering+Collaborative+Editing