javascript - 这是否可以使用 PHP 保持登录凭据有效?
问题描述
如果有人登录 Google、Facebook、Amazon 或 Stack Overflow,则该人的登录凭据将一直有效,直到注销。我想问一下,在使用 PHP 或 Javascript 注销之前,如何将用户的登录凭据保持在他/她的计算机中?
如果没有,可以使用 PHP 或 Javascript,我可以做什么或应该使用什么技术。
我应该使用
Cookie
函数并设置过期时间,直到我的域使用mktime
函数过期。
已编辑
请提及您的答案的源代码。
解决方案
您可以使用 PHP 增加会话超时。如果您希望会话在浏览器关闭之前一直保持活动状态,您只需将 session.gc_maxlifetime 设置为 0:
ini_set('session.gc_maxlifetime', 0);
如果您想要无限会话,您可以将 session.gc_maxlifetime 设置为:
ini_set('session.gc_maxlifetime', 60 * 60 * 24 * 365); # session expires after 1 year
否则,您可以在开始会话之前将 session.gc_probability 设置为 0。这将使垃圾收集器有 0% 的机会删除会话数据。您必须在共享相同会话存储位置的所有应用程序中执行此操作。
ini_set('session.gc_probability', 0);
您还可以从 php.ini 文件中更改这些值
如果您需要有关 php.ini 变量的更多信息,请查看 php 文档: https ://www.php.net/manual/en/session.configuration.php#ini.session.gc-probability
推荐阅读
- php - 从其他 PHP 文件访问变量
- c - 任何人都知道如何解决 C 程序运行时出现“collect2.exe:错误:ld 返回 1 退出状态”的错误吗?
- reactjs - 如何在 React Native 中创建私有屏幕?
- android - 获取 3rd 方 sdk 大小
- python - 使用 Flask 发送多个文件?
- c++ - 是否可以在 C++ 中有一个“通用”模板参数,它可以是非类型模板参数或类型?
- python - 大步穿过熊猫数据框
- typescript - 当编译器无法自动推断时如何在打字稿中强制执行函数调用签名
- g++ - g++ 4.5.1 警告 NULL 参数但不接受 -Wno-nonnull?
- firebase - 部署超时后首次调用 Firebase 云功能