def process_request(self, request): host = request.get_host() # Only look at requests to example.microco.sm if host.endswith(settings.API_DOMAIN_NAME): # Fetch site from cache try: site = self.mc.get(host) except memcache.Error as e: logger.error('Memcached GET error: %s' % str(e)) site = None # Not in cache or retrieval failed if site is None: try: site = Site.retrieve(host) try: self.mc.set(host, site, time=300) except memcache.Error as e: logger.error('Memcached SET error: %s' % str(e)) except APIException, e: # HTTP 400 indicates a non-existent site. if e.status_code == 400: return HttpResponseRedirect('http://microco.sm') logger.error('APIException: %s' % e.message) return HttpResponseRedirect(reverse('server-error')) except RequestException, e: logger.error('RequestException: %s' % e.message) return HttpResponseRedirect(reverse('server-error'))
def process_request(self, request): host = request.get_host() # Only look at requests to example.microco.sm if host.endswith(settings.API_DOMAIN_NAME): # Fetch site from cache try: site = self.mc.get(host) except memcache.Error as e: logger.error('Memcached GET error: %s' % str(e)) site = None # Not in cache or retrieval failed if site is None: try: site = Site.retrieve(host) try: self.mc.set(host, site, time=300) except memcache.Error as e: logger.error('Memcached SET error: %s' % str(e)) except APIException, e: # HTTP 400 indicates a non-existent site. if e.status_code == 404: return HttpResponseRedirect('http://microco.sm') logger.error('APIException: %s' % e.message) return HttpResponseRedirect(reverse('server-error')) except RequestException, e: logger.error('RequestException: %s' % e.message) return HttpResponseRedirect(reverse('server-error'))