Flask:Heroku自定义域名导致会话失效?
我有一个在Heroku上运行的Flask应用,Heroku的地址是“helloworld.herokuapp.com
”,而我给这个应用设置了一个自定义域名,比如“www.helloworld.com
”。
当我通过Heroku的原始网址访问这个应用时,用户会话(session)工作得很好。但是当我通过“www.helloworld.com
”访问时,用户会话就不正常了。我猜这可能是因为Flask生成的会话cookie是针对错误的域名。
我尝试把app.SESSION_COOKIE_DOMAIN
和app.SERVER_NAME
设置为“helloworld.com
”,但是它仍然只为“helloworld.herokuapp.com
”生成会话cookie。
有没有办法让我强制会话cookie使用我的自定义域名呢?
1 个回答
2
经过多次测试和尝试不同的 SESSION_COOKIE_DOMAIN
和 SERVER_NAME
设置,我发现问题出在 Heroku 上。Heroku 处理自定义域名的方式有些问题,导致域名的 cookie 出现了问题。
我通过把项目迁移到 EC2 上来验证这一点……现在一切都正常了。