【问题标题】:How to handle thousands of legacy urls in Django, Varnish, Nginx? [closed]如何在 Django、Varnish、Nginx 中处理数千个遗留 url? [关闭]
【发布时间】:2015-10-27 13:58:48
【问题描述】:

我们正在构建一个 Django 应用程序来替换几乎所有资源都使用自定义 URL 的旧系统。 URL 根本没有模式。我们现在需要将大约 350,000 个自定义 URL 301 重定向到新系统中的正确 URL。

我们的新系统将使用 Django,但前面也会有 Varnish 和 Nginx,因此我们可以使用这些工具中的任何一个来解决问题。

在 Django 中,我认为我们可以制作一个非常大的自定义 urls.py 文件,或者制作一个中间件,对包含所有重定向的表进行数据库查找。

或者也许有一种方法可以在 Varnish 或 Nginx 中处理这个问题,所以请求甚至不会到达 Django。

我的问题:处理数千个自定义 URL 重定向的最高效方法是什么?

【问题讨论】:

  • 我认为这主要是见仁见智。涉及 varnish 或 nginx 的解决方案可能会更高效。

标签: python django redirect nginx varnish


【解决方案1】:

这实际上取决于负载...如果您有很多请求转到旧网址,那么进行一些缓存可能会很有用。但总的来说,我会说在 Django 中执行此操作,将所有 url 添加到数据库模型和查询(可选地在 Django 甚至 Varnish 中缓存结果)应该可以解决问题。

这些事情在 Varnish 或 Nginx 中并非不可能,但 Django 将更容易链接到数据库,这样我就可以投票了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-01-16
    • 1970-01-01
    • 2011-03-08
    • 2011-08-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多