基于cookie在两台服务器之间路由流量

时间:2012-08-23 23:25:12

标签: django cookies nginx url-routing

我们正在重写正在制作的Django网站。我们希望将旧网站与旧网站并行部署,并使用以下方案慢慢将流量从旧网站转移到新网站:

  • 新帐户转到新网站
  • 现有帐户转到旧网站
  • 现有帐户可能有机会选择加入新网站
  • 转移到新网站的帐户可以选择退出并返回旧网站

我很清楚,涉及到cookie,并且Nginx能够根据cookie重写请求:

如何设置cookie对我来说仍然有点神秘。这似乎是鸡与蛋的问题。有没有人成功运行这样的计划?你是怎么做到的?

1 个答案:

答案 0 :(得分:2)

我认为最合适的解决方案是:

  1. 每次请求时,Nginx都应检查一些特定的Cookie,route
  2. 如果已显示且等于old,则请求转到old网站
  3. 否则请求将转至new网站。
  4. 每个网站(新旧网站)都应该检查该Cookie的请求(route
  5. 如果没有呈现(或错误)Cookie,您的应用应将其设置为正确的值,如果请求是针对该网站,则只需继续操作。
  6. 如果没有,则应发送redirect,然后我们重新开始1