Php 如果禁用Cookie,会发生什么?

Php 如果禁用Cookie,会发生什么?,php,session,cookies,session-cookies,Php,Session,Cookies,Session Cookies,这是一个非常基本的问题。在PHP中,如果用户的浏览器禁用了COOKIE,则不能同时使用服务器COOKIE($\u SESSION)和客户端COOKIE($\u COOKIE,setcookie),或者只禁用后者? 基本上你不能让用户登录或者做任何需要会话的事情,对吗 另外,在哪种情况下,有人希望禁用Cookie 谢谢 您可以通过$\u GET跟踪用户 想象一下,在用户访问的每个页面上,您都会传递一个?user_id=XYZ123,然后您就会实现一个非常类似的服务器标识。它有明显的缺点: 如果复制

这是一个非常基本的问题。在PHP中,如果用户的浏览器禁用了COOKIE,则不能同时使用服务器COOKIE(
$\u SESSION
)和客户端COOKIE(
$\u COOKIE
setcookie
),或者只禁用后者? 基本上你不能让用户登录或者做任何需要会话的事情,对吗

另外,在哪种情况下,有人希望禁用Cookie


谢谢

您可以通过
$\u GET
跟踪用户

想象一下,在用户访问的每个页面上,您都会传递一个
?user_id=XYZ123
,然后您就会实现一个非常类似的服务器标识。它有明显的缺点:

  • 如果复制/粘贴URL,则会泄露会话id
  • 因为1节课高,杰克的技术水平更低
  • 用户为什么禁用Cookie?
    用户倾向于把第一方和第三方的饼干都放在一起,但它们来自不同的品种

    第一方饼干一般都可以。当你访问Facebook时,Facebook会保存一个cookie来存储你与服务器的交互


    没想到的是,在Facebook和eBay上都添加了cookie的广告公司会把你的cookie拿回来检查,啊,所以这家伙在eBay上找xyz,所以现在他在Facebook上,我要让他看abc,让他买等等。

    是的,这是真的。会话和普通cookie都是普通cookie。如果用户不接受cookie,则不能使用cookie启用的任何功能。这意味着几乎整个互联网都会为这个用户而崩溃,这就是为什么在这个时代几乎没有人会完全禁用cookies

    PHP有一个名为的内置机制,它自动重写所有链接以在查询参数中包含会话id。我不建议使用它,因为URL中的会话ID会打开一个全新的蠕虫罐


    为了方便用户,我建议您测试用户是否启用了cookie(设置cookie,重定向到下一页,并在URL中设置cookie标志,查看是否有cookie返回),如果没有,请建议用户启用cookie。

    我认为您应该阅读会话参考手册


    简而言之,如果您的服务器找不到会话id,则无法恢复会话。但您可以使用其他方法存储会话值。或者,您可以根据用户的客户端环境参数生成会话ID。

    +1获取此答案。胡思乱想。。不过,您认为trans-sid与SSL结合使用可以接受吗?(因为查询参数是ssl的)?@Ben问题并不是缺少ssl,而是用户不会理解URL包含会话,而是将包含trans sid的URL发送给朋友。单击链接将以用户身份登录该朋友。@Ben否。问题不在于可见性。如果有人能够拦截cookie和URL,cookie就和URL一样可见。问题在于共享URL、在浏览器历史记录中包含URL等等。是的,非常好的一点,我完全忽略了aspectI完全禁用了cookies。我在每个站点的基础上启用它们。还不错。