Cookies 饼干“;PHPSESSID”;将很快被视为针对<;文件>;因为方案不匹配

Cookies 饼干“;PHPSESSID”;将很快被视为针对<;文件>;因为方案不匹配,cookies,assets,url-scheme,cross-site,websecurity,Cookies,Assets,Url Scheme,Cross Site,Websecurity,我刚刚注意到我的控制台上到处都是这个警告,出现在每个链接的资源上。这包括所有引用的CSS文件、javascript文件、SVG图像,甚至是来自ajax调用(以JSON响应)的URL。但不是图像 例如,如果出现style.css文件,警告将显示: Cookie“PHPSESSID”将很快被视为“针对”的跨站点Cookiehttp://localhost/style.css“因为方案不匹配 但是,这个计划不符合什么?文件?因为确实如此 我的网站的URL是http://localhost/ 该站点及

我刚刚注意到我的控制台上到处都是这个警告,出现在每个链接的资源上。这包括所有引用的CSS文件、javascript文件、SVG图像,甚至是来自ajax调用(以JSON响应)的URL。但不是图像

例如,如果出现
style.css
文件,警告将显示:

Cookie“PHPSESSID”将很快被视为“针对”的跨站点Cookiehttp://localhost/style.css“因为方案不匹配

但是,这个计划不符合什么?文件?因为确实如此

  • 我的网站的URL是
    http://localhost/
  • 该站点及其资源都位于
    http
    (本地主机上没有
    https
  • 域名肯定没有什么不同,因为所有内容都是相对于域名引用的(这意味着文件路径以斜线开头
    href=“/style.css”
网络检查器只报告一个绿色的
200OK
响应,显示一切正常

只有Mozilla Firefox对此表示不满。铬似乎什么都不关心。我没有任何浏览器加载项。这些警告似乎来自浏览器,每个警告都链接到调试器中查看相应的文件源


为什么会出现这种情况?

猜测您正在使用WAMP或LAMP等。您需要做的第一件事是在WAMP上启用ssl,因为您会发现许多参考说明您需要将cookie设置调整为SameSite=None;确保本地连接的安全性。这个链接上有说明,还有一些YouTube视频。 需要注意的重要一点是,在创建SSL证书时,您应该使用sha256编码,因为sha1现在已被弃用,并将引发另一个警告。 关于SameSite cookies,有一个很好的解释 我也遇到了同样的问题,通过确保启用了Apache2.4 headers模块并添加了一行代码,我解决了这个问题

Header always edit Set-Cookie ^(.")$ $1;HttpOnly;Secure
我浪费了很多时间盯着检查器中的同一组警告,直到我意识到这些cookie持续存在,需要清除


显然,Chrome将要引入新规则,但新冠病毒-19意味着很多网站可能在人们在家工作时被破坏。各大浏览器正在共同开发SameSite属性,因此它很快就会生效。

我也遇到了同样的情况。问题是,firefox甚至让我显示托管在同一URL上的不同网站的cookie:“localhost:Port number”存储在浏览器内存中

在我的例子中,我有两个项目配置为在
http://localhost:62601
,当我运行第一个项目时,它会将cookie保存在浏览器内存中。当我运行具有相同URL的第二个项目时,该项目控制台中也可以使用Cookie


你所能做的就是从浏览器中删除所有的cookies。

@Paramjot Singh的答案是正确的,让我找到了我需要的地方。我也浪费了很多时间盯着那些警告

但要澄清一点,您不必删除所有cookies来解决此问题。在Firefox中,您可以删除单个站点cookie,这将保留您在其他站点上的设置

要执行此操作,请单击右上角的汉堡包菜单,然后,
Options->Privacy&Security

从这里向下滚动大约一半,找到Cookies和站点数据。不要单击“清除数据”。相反,请单击管理数据。然后,搜索您正在发布通知的站点,突出显示该站点,然后
删除所选内容


很简单,我知道,但我犯了第一次清除所有内容的错误-也许这会阻止其他人这样做。

发出警告是因为,根据:

最近更改了与Cookie SameSite属性相关的标准,以便:

如果未指定SameSite,则cookie发送行为为SameSite=Lax。以前的默认设置是为所有请求发送cookie。 SameSite=None的Cookie现在还必须指定安全属性(它们需要安全上下文/HTTPS)

这表示需要安全上下文/HTTPS,以便通过为cookie设置
SameSite=None secure
来允许跨站点cookie

根据Mozilla的说法,您应该为您的cookie显式地传达预期的SameSite策略(而不是依赖浏览器自动应用SameSite=Lax),否则您可能会收到如下警告:

Cookie“mycokie”将“SameSite”策略设置为“Lax”,因为它缺少“SameSite”属性,“SameSite=Lax”是该属性的默认值

简单删除本地主机cookies的建议实际上并不能解决问题。解决方案是正确设置服务器设置的cookie的
SameSite
属性,并在需要时使用HTTPS

Firefox并不是唯一做出这些改变的浏览器。显然,我正在使用的Chrome版本(84.0.4147.125)已经实现了这些更改,因为我在控制台中收到了以下消息:


并且有关于SameSite cookie行为变化的大量信息。

tl;在Firefox中进行灾难恢复,转到设置,搜索Cookie,单击管理数据,搜索本地主机,选择本地主机,单击删除所选。。。为我工作……此外,您可以在Firefox中遵循以下简单步骤:我从VirtualBox运行多个开发项目,在相同的IP地址上访问,但通过主机文件中定义的域访问。删除cookies似乎使消息消失了。