Flask 会话不持久

2023-11-27

我在 CentOS 6.3 上运行 Python 2.7、Apache + mod_wsgi

当我在本地主机上时,一切正常。但是,当我在 Azure 中的虚拟机上运行代码时,我没有看到会话信息跨页面保存。

基本上在我看来,我有这样的想法:

@frontend.route('/')
def index():
   session['foo'] = 'bar'
   print session['foo']

   return redirect(url_for("frontend.page2"))

@frontend.route('page2')
def page2():
   print session

打印输出为:

bar
<SecureCookieSession {}>

我的 apache wsgi 配置是:

WSGISocketPrefix /var/run/wsgi

<VirtualHost *:80>
    ServerName example.com
    ServerAlias example.com

    WSGIDaemonProcess myproj threads=5 processes=5
    WSGIScriptAlias / /home/mydir/myproj/apache/myproj.wsgi

    <Directory /home/mydir/myproj>
        WSGIScriptReloading On
        WSGIProcessGroup myproj
        WSGIApplicationGroup %{GLOBAL}
        Order deny,allow
        Allow from all
    </Directory>
</VirtualHost>

我设置了 Secret_key:

app.secret_key = os.urandom(24)

我尝试过设置 SERVER_NAME 但没有帮助:

app.config['SERVER_NAME'] = 'example.com' 

关于如何进一步调试这个的任何想法?

Thanks!


不要使用app.secret_key = os.urandom(24)!

您应该在此处输入静态值,而不是从中读取os.urandom每一次。您可能误解了示例中的内容docs,它向您展示了如何从中读取随机数据os.urandom,但它也明确指出:

只需将其复制/粘贴到您的代码中即可完成

如果你在运行时读取它,那么你的每个工作进程都会有一个不同的密钥!这意味着如果请求由不同的工作人员处理,会话将会中断,因为 cookie 使用错误的密钥进行签名。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Flask 会话不持久 的相关文章

随机推荐

  • 使用 Spring Boot 应用程序启用 HTTP 严格传输安全 (HSTS)

    我已经关注了这篇文章https docs spring io spring security site docs 4 0 2 RELEASE reference html headers html headers hsts在我的 Sprin
  • JavaScript location.reload() 正在丢失发布数据

    我正在尝试使用java脚本重新加载页面 页面重新加载 但页面中的帖子数据未加载 帖子数据被删除 而页面重新加载任何人都可以帮助我 function currencychange xxx setTimeout delay 2000 funct
  • 在 Paul Graham 的 ANSI Common Lisp 中编写示例

    谁能解释一下 Paul Graham 的 ANSI Common Lisp 第 110 页中的示例吗 该示例尝试解释使用 rest 和 lambda 来创建函数式编程工具 其中之一是组成函数参数的函数 我找不到任何解释它是如何工作的 代码如
  • 确定操作栏是否拆分

    我有一个MapView带有由 ActionBarSherlock 提供支持的操作栏 操作栏既可以分割 在 窄 屏幕上 也可以覆盖 半透明 android windowActionBarOverlay 为 true 或多或少类似于谷歌地图应用
  • 执行 gem 时...(ArgumentError)未知编码名称 - CP720 [重复]

    这个问题在这里已经有答案了 我现在遇到了这个奇怪的错误 while executing gem ArgumentError unknown encoding name CP720 当我想运行任何 gem 命令时 例如 gem install
  • Location.getTime() 始终返回不带毫秒的时间戳

    我正在跟踪 GPS 位置LocationManager requestLocationUpdates using LocationManager GPS PROVIDER并注册一个LocationListener 我的问题 所有测试的设备
  • Qt 找出 QSpinBox 是否被用户更改

    假设我有一个QSpinBox 我如何查明该值是否是由用户或其他函数手动更改的 编辑 我只想在用户更改值时执行一些操作 但如果您的程序执行此操作 setValue 我不想执行此操作 可能的解决方案 ui gt spinBox gt block
  • AngularJS ui-router:测试 ui-sref

    我正在尝试测试一些正在使用的视图 a link a 链接到我的应用程序中的其他州 在我的测试中 我触发了对此元素的点击 如下所示 element find a click 如果状态切换到 我该如何测试someState 使用时会很容易 st
  • 如何轻松地从 lambda 函数创建比较器?

    我想知道 Net 框架中是否提供了一个实现 IComparer 的类 并且可以从 lambda 函数构造该类 能够做到这一点将会很有用 void SortByLength List
  • 使用 NavigationController 在当前 tabBarController 上呈现视图控制器

    当呈现或关闭 VC 时 我不想继续隐藏和显示 tabBar 因为它会造成糟糕的用户体验 相反 我想直接在选项卡栏上呈现下一个 VC 这样当我通过从左向右缓慢拖动来关闭下一个 VC 时 我可以看到隐藏在视图后面的选项卡栏 如下图所示 请注意
  • 实现循环 UITableView

    实现循环 UITableView 的最佳方法是什么 当用户向上滚动到表格边界时 它不是显示空白 而是简单地循环环绕 这里的示例可能是选择星期几 一天 24 小时中的某个小时 或者全球范围内按顺序排序的时区 有一些如何解决这个问题的想法 可以
  • Spring Security 3-如何自定义用户名/密码参数?

    使用时如何自定义 UsernamePasswordAuthenticationFilter usernameParameter j username 和 passwordParameter j password 属性
  • java中的动态代理soap web服务客户端?

    有没有办法使用soap rpc Web服务 以便通过共享接口生成客户端 Restful Web 服务就是这样做的 但是基于肥皂的呢 您是否总是必须使用 Axis 或 CXF 等工具来生成存根和代理 或者是否有可以动态设置它的工具 Thank
  • 像关系数据库一样使用 Lucene

    我只是想知道我们是否可以在 lucene 中实现一些 RDBMS 功能 例子 1 我有 10 000 个项目文档 pdf 文件 必须对其内容进行索引 以便可供搜索 2 每个文档都与一个项目相关 项目可以包含项目名称 编号 开始日期 结束日期
  • 如何从ajax数据发送将pdf上传到服务器(使用jsPDF)

    我正在使用 jsPDF 在客户端生成 pdf 使用函数 doc save filename pdf 我可以下载它 现在我需要将其保存在服务器上 因此我使用 ajax 发送 pdf 数据并使用 PHP 脚本接收它 但生成的 pdfURL 上的
  • 在 #include 语句中使用垃圾字符时不会出现编译器错误

    include
  • 如何防止 EF Core 3.1 中的列更新?

    我从 Net Core 2 2 升级到 3 1 此功能已被弃用 modelBuilder Entity
  • 方案中的笛卡尔积

    我一直在尝试做一个返回n个集合的笛卡尔积的函数 在DrScheme中 集合以列表的形式给出 我一整天都在做这个 我想要一些指导方针 因为开始 稍后编辑 这是我想出的解决方案 我确信它不是迄今为止最有效或最简洁的 但我只学习了 3 周的方案
  • 获取带有改造的网站的 html - Android?

    我怎样才能获得一个网站的htmlretrofit 例如我有这个url我需要获取这个 url 的 html 以及如何加载更多 下面是我的代码 MainActivity java public class MainActivity extend
  • Flask 会话不持久

    我在 CentOS 6 3 上运行 Python 2 7 Apache mod wsgi 当我在本地主机上时 一切正常 但是 当我在 Azure 中的虚拟机上运行代码时 我没有看到会话信息跨页面保存 基本上在我看来 我有这样的想法 fron