问题标签 [session-cookies]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - PHP - 为什么我不能摆脱这个会话 id cookie?
我正在尝试对 Web 应用程序的注销功能进行故障排除。当您登录时,该应用程序为其域设置了多个 cookie。这是当前的注销过程:
- 您单击一个链接,该链接会将您发送到注销页面
- 注销页面运行一个函数,该函数调用
session_destroy()
并循环遍历域的所有 cookie,并将它们设置为过去过期(请参见下面的代码) - 注销页面然后重定向到一个登录页面,这是直接的 HTML。
在此过程结束时,所有其他 cookie 都未设置,但PHPSESSID
cookie 仍然存在,具有相同的值,并且仍然设置为在会话结束时过期。
我在这里想念什么?
这是我上面提到的注销功能:
php - 无法更改 php 会话 cookie 名称
我将现有且成功运行的站点复制到新的开发服务器。
新服务器上的登录现在被破坏了,我追查到虽然会话 cookie 被重命名了......
...浏览器不断将会话cookie存储为PHPSESSID。
当我从新服务器上的应用程序中删除上述行时,登录再次起作用。但这不是一个好的解决方案,因为另一个应用程序也使用此名称下的 PHPSESSID。
而且我更愿意找到奇怪行为的原因,而不是使用解决方法。如果我不修复它,它可能会在其他地方咬我。
也许这已经足够有人给我提示了。如果没有,什么信息会有用?
这台机器是一个非常赤裸裸的基本 ubuntu 8.04 服务器,我安装了 apache2、mysql 和 php5 的 aptitude。我还更新了 lokales 和时区。
解决方案:
我用接受的答案中的代码替换了上面的行...
...并且登录现在可以在新服务器上使用。
php - 跨 2 个顶级域的 PHP cookie
我有 2 个域(例如 test1.com 和 test2.com),我需要跨这 2 个域的用户登录。
两个域都在同一台服务器上运行。我希望能得到一些帮助。:)
security - 用 FireSheep 劫持 Facebook;什么是最好的预防措施,它是如何工作的?
是否真的说“任何时候用户登录到一个站点,并且没有重定向到 SSL/TLS/HTTPS 连接,会话 cookie 很容易受到攻击”?
保护 Facebook 凭据的最佳解决方案是什么,它是如何工作的?
有什么方法可以进行安全会话并且没有SSL/TLS?换句话说,有没有办法让一台机器上的cookies不能在另一台机器上重放?
最后一个问题之所以重要,是因为 Google AdSense 不支持 SSL/TLS,因此会强制设计者公开所有 cookie。这将反过来影响依赖 AdSense 的每个网站
asp.net - 古怪的 cookie 行为
我的一位同事让我看看一些 cookie 行为。他创建了一个简单的 Web 应用程序,该应用程序创建了一个 cookie 并插入了一个文本字段的值,然后他检查了下一页上的 cookie 集合,以查看它已被正确插入并读回。
真的很简单。
然而,在第二页上,他注意到这不仅仅是一个 cookie,其他的则与他在本地调试的另一个 Web 应用程序相关。
我告诉他这是因为浏览器识别了 URL 并因此发送了它识别为来自那里的所有 cookie,这是正确的吗?即使本地调试服务器端口更改,它也会这样做吗?
php - 具有多个域和子域的 PHP 身份验证
我有一个主域:main.com
、子域:test1.main.com
和test2.main.com
其他域one.com
,two.com
.
现在它是这样完成的:
登录.php
在每个页面上添加:
注销.php
但它仅适用于域main.com
及其子域test1.main.com
,test2.main.com
.
我需要以某种方式保存会话和其他域one.com
,two.com
.
如何最好地进行安全身份验证,如果有解决方案,我真的很困惑,请举例说明。
post - 从 UTF-8 站点发布到 ISO-8859-1 站点 (PHP)
关于以下情况:
www.foo.com 是一个以 UTF-8 格式提供的页面。它具有 www.bar.com/Servlet 的登录表单。www.bar.com 是一个支持 ISO-8859-1 的应用程序。
我有以下问题:
每当有人使用特殊字符(如德语变音符号)作为密码时,登录失败,因为密码以 UTF-8 格式发布,但应用程序希望它采用 ISO-8859-1 格式。
当然,我可以accept-charset="ISO-8859-1"
向 html 表单添加属性,但这(当然)在 IE 中不起作用。
我现在想到了一个代理脚本,它将 UTF8 转换为 ISO-8859-1 并将该数据发布到 www.bar.com/Servlet。转换确实有效,发布也有效(由 CURL 完成)。但是当我直接回显 www.bar.com/Servlet 返回的 html 时(地址栏中仍然有 www.foo.com),html 中的相关链接不起作用。我设法用一个丑陋的替换向输出添加了一个基本标记,它似乎可以工作,但这不是一个非常优雅的解决方案。
是否有更简单的方法将 UTF-8 数据发布到 ISO-8859-1 应用程序?
我的 CURL 代码如下所示:
jquery - 响应内容类型与预期不同
我有一个 jquery 日历小部件,可以查询服务器上的多个事件源,这些源都返回相同的 JSON 格式响应。
真正令人讨厌的是,当用户 cookie 过期时,这些来源都会将用户重定向到返回 HTML 内容的登录页面。
我用 fiddler 查看了请求,我可以看到两个请求已完成:第一个是来自 jquery 日历对象的请求,用于更新具有 http 状态 302 的事件,并在请求登录页面后立即使用 http 状态 200。
我的网站深深地基于 ajax 调用,而这个日历只是解释我面临的问题的一个例子。我想避免在每次 ajax 调用时处理错误并进行重定向。最佳方法是找到一种在用户会话 cookie 过期时自动断开用户连接的方法。我已经在一些网络电子邮件系统中看到了这一点,该系统会自动创建一个对话框,说明会话已过期。
对这个方向有帮助吗?
java - 会话过期和无效之间的区别
过期会话和无效会话有什么区别?
还有,如何在java中使会话过期?
请帮我。提前致谢。
http - 将压缩数据存储在 cookie 中
将压缩数据存储在 cookie 中的最佳方式是什么?我想这样做的原因是:
- 我想在 1 个 cookie 中存储尽可能多的数据
- 我希望在数据传输方面性能尽可能快
- 我不希望我存储的内容如此明显,以防止轻易篡改
- 有很多值,希望这样做的最佳机制可以轻松检索