php - Symfony 应用程序或 PHP 可以同时管理多少个 session ?

标签 php symfony session symfony-2.6 symfony-http-foundation

假设我有一个共享两个主要包的 Symfony2 应用程序:OneBundleTwoBundleOneBundle 充当用于管理目的的后端,TwoBundle 是用于外部的 RESTful API。

OneBundle 的流程是每个人都知道的:管理员登录、执行操作和注销或让应用程序保持打开状态或直接关闭浏览器或以任何其他方式关闭应用程序,在这种情况下 session 应该是按照 config.yml 中的定义销毁或丢弃( session 的 24 小时过期日期)。

现在 TwoBundle 有一个不同的流程:用户登录 Salesforce 并获得一个 token ,该 token 被传回 API 端点,我创建一个新 session 来存储 token 和一些其他信息,用户注销或关闭客户端应用程序或其他东西,该 session 应该持续一周而不是像第一个那样持续 24 小时。

同一个 Symfony2 应用程序是否可以共享两个不同的 session ,即一个 session 用于 OneBundle 而第二个 session 用于 TwoBundle? PHP 允许吗?你如何处理这个业务规则?我可以将一个 session 存储为默认保存处理程序,将另一个 session 存储为 PdoSessionHandler 吗?

最佳答案

可以通过在security.yml文件中设置两个防火墙来实现。一个用于“OneBundle”,另一个用于“TwoBundle”,如果需要,您可以使用不同的安全处理程序(第一个是 FOSUser,第二个是 Native),因此 symfony 安全性非常灵活。

[编辑]

您可以在 symfony 配置中查看这些页面:

关于php - Symfony 应用程序或 PHP 可以同时管理多少个 session ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30339400/

相关文章:

asp.net - 管理 session 状态

java - 如何从 webapps java 获取 Windows session 登录?

javascript - DataTables 中的 PHP 重定向按钮不起作用

php - 我可以在 SQL 语句中执行算术运算吗?

php - Twig 用一个变量设置一个变量名 [TWIG/PHP]

symfony - 如何使用 JWT 修复 "The key _username must be a string"错误

php - PayPal NVP API 错误 10413 - 购物车商品总金额与订单金额不匹配

symfony - 在 Symfony 2 和耦合中集成 Bundles(相关 Doctrine 2 实体)

post - 在 Symfony2 中访问多个同名请求参数

PHP $_SESSION 变量不会持续存在——为什么不呢?