我在 debian vm 中运行 Firefox,结果出现很多 408 错误。谷歌搜索告诉我清除 cookie 可以解决这个问题,确实如此,但只有在这些 cookie 再次设置后才能解决。
有人知道为什么清除 cookies 可以解决这个问题吗?我猜是网络问题,但我不明白为什么清除 cookies 会影响这个问题。
答案1
当浏览器向 Web 服务器发出 HTTP 请求以获取文档时,该请求包含任何饼干你必须语境(通常是站点),以便服务器可以根据其在 cookie 中期望的值执行任何所需的操作。
您的请求将被分解并以尽可能多的数据包形式发送到服务器,因此 HTTP 请求本身被视为流。一旦该流开始进入,就会设置一个计时器,如果在计时器响起时流未包含请求的结尾,则服务器决定请求已“超时”。这很重要,因为如果服务器没有做出这个选择,通过多次发送请求流的开头而不完成一次,很容易对站点进行 DOS 攻击,并且会填满服务器容纳待处理请求的容量,此时新请求根本无法连接。相反,服务器只返回一个408. 408 可能反映服务器问题,但如果清除 cookies 有效,并且该问题影响许多站点/服务器,那么问题很可能出在您这边。
根据您的描述,可以:
Cookie 很大,需要很长时间/带宽才能发送,
太多 Cookie 符合上下文(大量第三方 Cookie,如 doubleclick 等),并且发送所有 Cookie 需要很长时间,
或者您的系统花费太长时间读取和传输 cookie,可能是由于网络问题、磁盘问题或其他操作问题。
通过清除 cookie,您可以解决所有这三个问题,因为您没有要发送的 cookie,或者 cookie 现在仅包含最少的数据,或者因为本来要发送的第三方 cookie 现在已经消失,只有网站的 cookie 仍然存在。