我通过linux服务器上的Apache2托管基于python的web应用程序。默认情况下,烧瓶会话将其cookie存储在/flask_session/下的根目录中。
我希望将cookie存储在应用程序文件夹中,即/var/www/webApp/webApp/cookies/。
在读了烧瓶文件之后,我觉得
app.config["SESSION_COOKIE_PATH"] = "/var/www/webApp/webApp/cookies/"应该做到这一点,但是它不起作用,而且
app.config["APPLICATION_ROOT"] = "/var/www/webApp/webApp/"也不影响任何事情:cookie仍然放在/flask_session/中
在这两种情况下,我只在配置之后传递应用程序:
Session(app)发布于 2022-09-22 17:40:58
首先,我们应该澄清的是,烧瓶不储存‘饼干’在当地。Cookie是一种客户端机制(通常是浏览器),所有存储都将发生在客户端--而不是在烧瓶中。
另一点:默认情况下,烧瓶将在cookie中存储所有会话数据。这意味着会话数据也将由客户端存储。有一些插件可用于更改此行为,并将会话数据存储在服务器上,而不是存储在cookie中。烧瓶会话是这样的一个库,它似乎是您正在使用的(请纠正我,如果不是这样)。
这样,我们就可以了解您的实际问题:“我们如何才能让Flask将会话数据存储在一个自定义目录中,而不是默认目录(/flask_session/)?”
根据文件,SESSION_FILE_DIR配置将在其中设置:
SESSION_FILE_DIR \\存储会话文件的目录。默认情况下使用当前工作目录下的flask_session目录。
因此,这段代码应该执行您想要的内容:
app.config["SESSION_FILE_DIR"] = "/var/www/webApp/webApp/"https://stackoverflow.com/questions/69389722
复制相似问题