V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
UnrealEngine
V2EX  ›  问与答

新人求问: PHP 里边, sessionid 不是保存在客户端的 cookie 里边么,为什么面试官说不正确?

  •  
  •   UnrealEngine · 2019-05-22 09:11:49 +08:00 · 3472 次点击
    这是一个创建于 1772 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我问了以前公司的组长,他也认为不正确,让我去百度百度

    可是很多技术文档都是这么说的呀

    30 条回复    2019-05-22 16:08:05 +08:00
    shench
        1
    shench  
       2019-05-22 09:20:52 +08:00   ❤️ 1
    不一定是在 cookie 里,也有可能是在 get 参数里
    shoaly
        2
    shoaly  
       2019-05-22 09:27:28 +08:00
    不用管这个刁钻的问题, 大部分情况 都是放里面的, 开发项目大部分也是"大部分情况"
    鬼知道他想问的是 "什么特殊情况", 或者 "这样也可以" 的方案, 别被带偏了
    jookr
        3
    jookr  
       2019-05-22 09:29:21 +08:00
    cookie
    header
    get
    post
    都有可能
    AngryPanda
        4
    AngryPanda  
       2019-05-22 09:29:38 +08:00 via Android
    理论上说,gpc 都有可能,甚至 header。只要能在客户端与服务端通信作为载体的,都可以。session 扩展默认是用 cookie 和 get 参数。我认为你回答 cookie 没问题。
    UnrealEngine
        5
    UnrealEngine  
    OP
       2019-05-22 09:30:14 +08:00
    @shench 谢谢

    @shoaly 他们都说不正确的时候差点让我怀疑人生了
    golden0125
        6
    golden0125  
       2019-05-22 09:30:42 +08:00
    默认情况都是这样的
    ssynhtn
        7
    ssynhtn  
       2019-05-22 09:50:37 +08:00
    用户可以随便编辑的东西那能叫保存吗?
    如果是问 PHP,那应该是保存在 php.ini 配置的 session.save_path 中,如果没配置好像是用系统默认的临时文件目录
    rr41ns
        8
    rr41ns  
       2019-05-22 09:57:59 +08:00
    感觉 7 楼说的对,貌似有几个大佬说偏了啊。。
    DamonLin
        9
    DamonLin  
       2019-05-22 10:00:39 +08:00   ❤️ 1
    客户端 cookie 里面有个 session_id 参数,通过这个参数找到服务端的 session
    U2Fsd
        10
    U2Fsd  
       2019-05-22 10:00:43 +08:00
    @ssynhtn @rr41ns


    sessionid 不是 session
    we8105
        11
    we8105  
       2019-05-22 10:04:10 +08:00
    你傻不傻 有可能是面试官错了也不一定呢 记错了也很正常的。
    U2Fsd
        12
    U2Fsd  
       2019-05-22 10:05:01 +08:00
    面试官和 7 楼一样惯性思维把 sessionid 当成 session 了而已
    loveCoding
        13
    loveCoding  
       2019-05-22 10:06:39 +08:00
    你回答并没有错误 ,可能他想让你讲讲 session 这套机制,sessionId 只是一个 token 而已,爱怎么存都行
    phieo2018
        14
    phieo2018  
       2019-05-22 10:06:56 +08:00
    面试官有时候就是想证明他比你牛逼
    fxxkgw
        15
    fxxkgw  
       2019-05-22 10:31:19 +08:00
    sessionid 在 cookie session 信息在服务端
    microchang
        16
    microchang  
       2019-05-22 10:37:51 +08:00
    我估计是打算问问 session 在服务端的存储情况,内存啊 Redis 啊之类的把?
    Felldeadbird
        17
    Felldeadbird  
       2019-05-22 10:57:37 +08:00
    mark 标记在客户,但信息再服务器。
    GM
        18
    GM  
       2019-05-22 11:01:16 +08:00
    先弄清楚问的是 sessionid 还是 session 吧,sessionid 存在客户端的某个地方,session 存在服务器的某个地方。
    shench
        19
    shench  
       2019-05-22 11:04:22 +08:00
    @rr41ns 你再好好看看他在说什么
    izoabr
        20
    izoabr  
       2019-05-22 11:06:06 +08:00
    面试官的水平也不是都那么高的,很可能自己就是个半桶水。
    rr41ns
        21
    rr41ns  
       2019-05-22 11:27:27 +08:00
    @shench
    @U2Fsd
    hahah,看漏了,看到 sess 开头直接看下一个短句了。。
    zsc8917zsc
        22
    zsc8917zsc  
       2019-05-22 12:02:41 +08:00
    因为服务器端也存有一份 sessionid,通过这个 id 去关联的 session 信息.... ....
    server
        23
    server  
       2019-05-22 12:22:24 +08:00
    今年面试某家公司,有个题就是 session 不存到 cookie 还能存哪里,我写的是 head,后来问了下面试官说放到链接里,第一感觉就是 SSO。广告行业还有一个概念叫 帆布指纹可以了解下,解决禁用 cookie、隐身下区分用户。
    顺道说下让查百度,这是喜好莆田医学?
    yinjy
        24
    yinjy  
       2019-05-22 12:24:52 +08:00
    这个问题需要结合上下文,你把 session 机制详细说一遍不就行了
    agdhole
        25
    agdhole  
       2019-05-22 12:31:17 +08:00 via Android
    服务端会存在文件或者内存中吧,客户端就在浏览器里?
    hlwjia
        26
    hlwjia  
       2019-05-22 12:33:12 +08:00 via iPhone
    结论:面试官和前公司组长都是一知半解
    Sapp
        27
    Sapp  
       2019-05-22 14:38:27 +08:00
    @AngryPanda 按照题主的描述,如果只回答 cookie 绝对是不正确的
    phpcxy
        28
    phpcxy  
       2019-05-22 14:41:13 +08:00
    如果后端是用 redis 或者数据库之类的来实现 session 的话,sessionid 是否存在 redis 或数据库里呢?
    R18
        29
    R18  
       2019-05-22 14:45:12 +08:00
    你问问答案告诉我啊,我也很想知道正确答案是什么
    lele2019
        30
    lele2019  
       2019-05-22 16:08:05 +08:00   ❤️ 2
    这帮人为了显示自己有点水平,把普通问题都复杂化了。简单的说,SESSIONID 一般默认在客户端就是在 COOKIE 里,服务器端 就是那个有 SESSION_PATH 这个里面 ,SESSION 数据存放在以 SESSIONID 为文件名 的文件里, 那帮人把这种问题 搞成 SESSIONID 可以放在什么地方。 那样的话,地方多了去。我手工写在纸上 我写个程序 OCR 一下,HOOK 一下发给服务器,同样可以。 真 TM 拿那帮人无语。。!!!! 一个个的装逼犯。。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3491 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 11:03 · PVG 19:03 · LAX 04:03 · JFK 07:03
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.