old_contents: from django.http import HttpResponse
  from django.utils.encoding import smart_str
  
  
  
  def serve_file(request, file, save_as, content_type, **kwargs):
      """Lets the web server serve the file using the X-Sendfile extension"""
      response = HttpResponse(content_type=content_type)
      response['X-Sendfile'] = file.name
      if save_as:
          response['Content-Disposition'] = smart_str(u'attachment; filename=%s' % save_as)
      if file.size is not None:
          response['Content-Length'] = file.size
      return response
  
new_contents: from django.http import HttpResponse
  from django.utils.encoding import smart_str
  
  
  
  def serve_file(request, file, save_as, content_type, **kwargs):
      """Lets the web server serve the file using the X-Sendfile extension"""
      response = HttpResponse(content_type=content_type)
      response['X-Accel-Redirect'] = file.name
      if save_as:
          response['Content-Disposition'] = smart_str(u'attachment; filename=%s' % save_as)
      if file.size is not None:
          response['Content-Length'] = file.size
      return response
  
subject: Update xsendfile.py