Merge pull request #498 from MITx/feature/victor/domain-specific-caching
Separate caches per-domain-name
This commit is contained in:
@@ -9,6 +9,7 @@ from functools import wraps
|
||||
|
||||
from django.core import cache
|
||||
|
||||
|
||||
# If we can't find a 'general' CACHE defined in settings.py, we simply fall back
|
||||
# to returning the default cache. This will happen with dev machines.
|
||||
try:
|
||||
@@ -41,7 +42,10 @@ def cache_if_anonymous(view_func):
|
||||
def _decorated(request, *args, **kwargs):
|
||||
if not request.user.is_authenticated():
|
||||
#Use the cache
|
||||
cache_key = "cache_if_anonymous." + request.path
|
||||
# same view accessed through different domain names may
|
||||
# return different things, so include the domain name in the key.
|
||||
domain = str(request.META.get('HTTP_HOST')) + '.'
|
||||
cache_key = domain + "cache_if_anonymous." + request.path
|
||||
response = cache.get(cache_key)
|
||||
if not response:
|
||||
response = view_func(request, *args, **kwargs)
|
||||
|
||||
Reference in New Issue
Block a user