【问题标题】:FOSUserBundle not working in Elastic BeanstalkFOSUserBundle 在 Elastic Beanstalk 中不起作用
【发布时间】:2013-03-17 10:21:09
【问题描述】:

我有一个流量很大的网站,该网站的性质意味着它可以在特定时间段内有很多请求。

我使用 amazon beanstalk 来管理负载均衡器和实例。

我最多可以运行 20 个实例,并且因为 FOSUserBundle 使用 Sessions 来保存数据,我正在失去用户登录等。

我知道 EB 具有粘性,但由于网站的性质,它会变得不堪重负,有时不会将正确的用户转发到正确的实例,所以我又失去了用户。亚马逊一点帮助都没有。

有没有办法覆盖它以使用安全 cookie(我知道 cookie 不安全,但我可以创建自己的加密/解密方法)

任何建议都会有所帮助:)

【问题讨论】:

  • 我不会去用 c 写一个或什么,但我的意思是我自己的函数比 crypt 等更安全地加密和解密
  • 你解决了吗?我们的非 symfony 应用程序与 AWS ELB 以及在 php.ini 中配置的 Elasticache / memcache 会话正常工作。 Symfony2 + FOSRestbundle 登录不是。我们禁用了 CSRF,但仍然没有运气。当我们的 ELB 中只有一台服务器时,它可以工作,但是一旦我们添加第二个服务器,它就会停止。它还适用于 ELB 中的粘性会话和多个服务器。这使我们相信 symfony2 中的某些东西,并且当 ELB 只有 1 个服务器时,或者当粘性打开时,可能会设置不同的标头。

标签: php symfony fosuserbundle amazon-elastic-beanstalk


【解决方案1】:

我发现基本上否定了存储在一台服务器上的会话。我记得使用自定义 php 系统执行此操作(使用我几年前构建的 php net session,但认为它不适用于 symfony。自从发布此问题后,我发现 PdoSessionStorage 基本上将您的会话存储在数据库而不是文件上服务器或实例。

请选择您的 syfmony 版本,因为命名空间有时会更改版本

Link to PdoSessionStorage on Symfony

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-02-22
    • 2018-04-21
    • 2016-08-02
    • 2021-12-21
    • 2016-04-17
    • 1970-01-01
    • 1970-01-01
    • 2017-09-08
    相关资源
    最近更新 更多