django应用程序可轻松配置多个x-file-accel位置

django-x_file_accel_redirects的Python项目详细描述


这个应用程序允许你保护nginx授权提供的静态文件。 你的django项目

保护文件

此示例将演示如何保护两个文件位置不被下载:

  • {静态url}/files/fbi
  • {静态url}/files/cia

在这个例子中,我们假设静态url是/static/

保护文件的步骤:

  1. 在nginx config中,禁用对所需位置的访问:

    location/static/files/fbi{denyall;}location/static/files/cia{denyall;}
  2. 添加内部路径以提供此文件。 我们将添加“根”目录,通过一个配置选项为两个位置提供服务:

    # needed for x-file-accell
    location/internal/files/{internal;alias$project_base/static/files/;}
  3. 配置x_file_accel_重定向应用程序:

    1. 设置settings.X_FILE_ACCEL = True

    2. "x_file_accel_redirects"添加到settings.INSTALLED_APPS

    3. 将应用程序添加到根url配置中,例如:

      urlpatterns+=patterns('',(r'^protected/',include('x_file_accel_redirects.urls')),)
    4. 在django admin中,使用下一个值创建x_file_accel_redirects.accelredirect的新实例:

      • 描述:任何有意义的东西。
      • url前缀:任何没有斜线的拉丁字母,例如“downloads”。
      • 需要登录:true。
      • 内部路径:“/internal/files/”(在nginx config中指定)。
      • 服务文档根目录:可选地,您可以指定包含所需文件的目录的路径 在settings.X_FILE_ACCEL == False时为他们提供django staticfiles应用程序。

配置并重新启动所有内容后,您将能够获取文件 $project_base/static/files/fbi/secrets/ufo.txt按下一个URL:

/protected/downloads/fbi/secrets/ufo.txt(/downloads/if from“prefix”字段的AccelRedirect)

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
由于java的原因,maven无法运行代码。lang.NoClassDefFoundError:com/fasterxml/jackson/annotation/JsonMerge   Android项目中的java Creative SDK图像编辑器UI   java如何在Android Studio中使用DataOutputStream上传文件并将其他参数传递到web服务器   java倒计时服务打开时崩溃   java将RubyonRails项目转换为JRubyonRails项目   java我的图库意图是不显示图像?为什么?   java如何在春季启动时跳过mongodb/   java@Autowired在Spring中是如何实现的   甲骨文Akka java。util。同时发生的timeoutexception线程池频繁超时   java maven依赖项对spring启动应用程序有何影响?   java Firestore执行复合查询,未截获事件“已修改”   java ItemStreamException:未能初始化读取器,原因是:IllegalStateException:流已初始化。重新开放前关闭   java将空标记解组到集合的新实例中   使用AspectJ的java新手:无法调用aspect   java查找棋类游戏的所有组合   你为什么要这样做and==与Java中的equals方法不一样吗?   如何对使用JavaUUID的代码进行单元测试?