Cookie的Secure属性设成True, 该Cookie就只对 https 访问生效了, 网站加了CDN, 访问流程是: 用户 至 CDN 走https, CDN 至 源网站 走http, 如果Cookie的Secure属性设成True, 由于CDN 至 源网站 走的是 http , 这个只对 https 生效的cookie会被丢弃吗? 网站, 属性, 只对
在您描述的场景中,由于CDN至源网站的连接是HTTP,因此Secure属性为True的Cookie不会被发送到源网站。这意味着,如果源网站依赖于这些Cookie进行会话管理或身份验证,那么这种配置可能会导致问题。为了解决这个问题,您可以考虑以下方案: 配置CDN以使用HTTPS回源:确保CDN与源网站之间的连接也是HTTPS。这样,即使Cookie的Secure属性为True,它们也可以被安全地传输到源网站。 调整Cookie的Secure属性:如果CDN至源网站的HTTP连接是不可避免的,您可以考虑将Cookie的Secure属性设置为False(但这会降低安全性,因为Cookie将在所有连接上被传输)。然而,请注意,这通常不是推荐的做法,因为它会使Cookie更容易受到中间人攻击和其他安全威胁。 综上所述,当Cookie的Secure属性设置为True时,在HTTP连接中该Cookie将不会被传输。因此,在您的场景中,由于CDN至源网站的连接是HTTP,Secure属性为True的Cookie将被丢弃。
Salta 发表于 2024-10-9 17:55 在您描述的场景中,由于CDN至源网站的连接是HTTP,因此Secure属性为True的Cookie不会被发送到源网站。这意 ... 如果这样啊, 那只能是让 CDN -> 源站, 也全部都走https了 还有问题, 如果cookie设置了HttpOnly属性, 我知道js就读不到它了(网站登录cookie都会设置这个属性), 只有浏览器自身访问网站时才会直接发送给网站(注入添加到header里面的), 那浏览器扩展和插件可以读取到这种HttpOnly属性的cookie吗