forked from 0x2620/pandora
cdn prefix
This commit is contained in:
parent
d403125757
commit
53fdb52ee8
2 changed files with 25 additions and 0 deletions
|
@ -14,6 +14,7 @@ from oxdjango.shortcuts import json_response, render_to_json_response
|
|||
from oxdjango.decorators import login_required_json
|
||||
|
||||
import ox
|
||||
import ox.geo
|
||||
from ox.utils import json, ET
|
||||
|
||||
from . import models
|
||||
|
@ -163,6 +164,22 @@ def init(request, data):
|
|||
if request.META.get('HTTP_X_PREFIX') == 'NO':
|
||||
config['site']['videoprefix'] = ''
|
||||
config['site']['mediaprefix'] = ''
|
||||
elif settings.CDN_PREFIX:
|
||||
try:
|
||||
city, country = get_location(get_ip(request))
|
||||
info = ox.geo.get_country(country)
|
||||
prefix = None
|
||||
for key in ('name', 'region', 'continent'):
|
||||
location = info.get(key)
|
||||
if location in settings.CDN_PREFIX:
|
||||
prefix = settings.CDN_PREFIX[location]
|
||||
break
|
||||
if prefix:
|
||||
config['site']['videoprefix'] = prefix['video']
|
||||
config['site']['mediaprefix'] = prefix['media']
|
||||
except:
|
||||
pass
|
||||
|
||||
response['data']['site'] = config
|
||||
response['data']['user'] = init_user(request.user, request)
|
||||
request.session['last_init'] = str(datetime.now())
|
||||
|
|
|
@ -225,6 +225,14 @@ VIDEO_PREFIX = ''
|
|||
MEDIA_PREFIX = ''
|
||||
#VIDEO_PREFIX = '//media.example.com'
|
||||
#SESSION_COOKIE_DOMAIN = '.example.com'
|
||||
CDN_PREFIX = {}
|
||||
# set video prefix baesd on country/region/continent
|
||||
'''
|
||||
CDN_PREFIX = {
|
||||
'India': {'media': 'https://media.in.example.com', 'video': 'https://{uid}.in.example.com'},
|
||||
'Northern Africa': {'media': 'https://media.eg.example.com', 'video': 'https://{uid}.eg.example.com'},
|
||||
}
|
||||
'''
|
||||
|
||||
SESSION_COOKIE_AGE = 60*24*60*60
|
||||
|
||||
|
|
Loading…
Reference in a new issue