我在两个AWS EC2实例上部署了两个相同的Flask应用程序。然后,我在这两台机器前面安装了一个Elastic Load Balancer。
我正在使用Flask基于标准cookie的会话管理进行身份验证,并使用@login_required
注释来保护路由。
一切正常,负载均衡器设置为粘性,但是一旦我开始向没有进行初始身份验证的机器发送请求(不粘),我就会收到身份验证错误。
我在两个服务器的配置中都有相同的密钥:
WTF_CSRF_ENABLED = True
SECRET_KEY = "my_key"
我的用户在数据库中保存:
@login_manager.user_loader
def load_user(id):
return User.query.get(id)
Flask加密的会话cookie能否以真正无状态的方式在不同的机器之间共享?