FEATURE: allow long polling to go to a different url

Added the site setting long_polling_base_url , this allows you
to farm long polling to a different server.

This setting is very important if a CDN is serving dynamic content.
This commit is contained in:
Sam
2014-10-24 13:38:00 +11:00
parent 1962563c31
commit aa9b3bb35a
8 changed files with 53 additions and 4 deletions

View File

@ -11,6 +11,17 @@ module ApplicationHelper
include CanonicalURL::Helpers
include ConfigurableUrls
def shared_session_key
if SiteSetting.long_polling_base_url != '/'.freeze && current_user
sk = "shared_session_key"
return request.env[sk] if request.env[sk]
request.env[sk] = key = (session[sk] ||= SecureRandom.hex)
$redis.setex "#{sk}_#{key}", 7.days, current_user.id.to_s
key
end
end
def script(*args)
if SiteSetting.enable_cdn_js_debugging && GlobalSetting.cdn_url
tags = javascript_include_tag(*args, "crossorigin" => "anonymous")