def __init__( self, redirect_url, content_type, basename=None, expires=None, with_buffering=None, limit_rate=None, attachment=True, ): """Return a HttpResponse with headers for Nginx X-Accel-Redirect.""" super(XAccelRedirectResponse, self).__init__(content_type=content_type) if attachment: self.basename = basename or url_basename(redirect_url, content_type) self["Content-Disposition"] = content_disposition(self.basename) self["X-Accel-Redirect"] = redirect_url self["X-Accel-Charset"] = content_type_to_charset(content_type) if with_buffering is not None: self["X-Accel-Buffering"] = with_buffering and "yes" or "no" if expires: expire_seconds = timedelta(expires - now()).seconds self["X-Accel-Expires"] = expire_seconds elif expires is not None: # We explicitely want it off. self["X-Accel-Expires"] = "off" if limit_rate is not None: self[ "X-Accel-Limit-Rate"] = limit_rate and "%d" % limit_rate or "off"
def __init__(self, file_path, content_type, basename=None, attachment=True): """Return a HttpResponse with headers for Lighttpd X-Sendfile.""" super(XSendfileResponse, self).__init__(content_type=content_type) if attachment: self.basename = basename or os.path.basename(file_path) self["Content-Disposition"] = content_disposition(self.basename) self["X-Sendfile"] = file_path
def __init__(self, file_path, content_type, basename=None, attachment=True): """Return a HttpResponse with headers for Apache X-Sendfile.""" super(XSendfileResponse, self).__init__(content_type=content_type) if attachment: self.basename = basename or os.path.basename(file_path) self['Content-Disposition'] = content_disposition(self.basename) self['X-Sendfile'] = file_path
def __init__(self, redirect_url, content_type, basename=None, expires=None, with_buffering=None, limit_rate=None, attachment=True): """Return a HttpResponse with headers for Nginx X-Accel-Redirect.""" super(XAccelRedirectResponse, self).__init__(content_type=content_type) if attachment: self.basename = basename or url_basename(redirect_url, content_type) self['Content-Disposition'] = content_disposition(self.basename) self['X-Accel-Redirect'] = redirect_url self['X-Accel-Charset'] = content_type_to_charset(content_type) if with_buffering is not None: self['X-Accel-Buffering'] = with_buffering and 'yes' or 'no' if expires: expire_seconds = timedelta(expires - now()).seconds self['X-Accel-Expires'] = expire_seconds elif expires is not None: # We explicitely want it off. self['X-Accel-Expires'] = 'off' if limit_rate is not None: self['X-Accel-Limit-Rate'] = \ limit_rate and '%d' % limit_rate or 'off'