2

我经营一个商业网站并使用 cookie。我记录了所有用户流量,并且经常可以看到用户浏览器发送给我的不是我设置的 cookie。规则规定浏览器不能发送由另一个域设置的 cookie。也许javascript可以设置一个cookie,但是我的服务器不会寻找除了我的PHP软件设置的cookie之外的任何cookie。

由于我经常收到网络攻击,我将中止任何请求的页面,其中包含任何 GET、POST 或 COOKIE 数据以及我不使用的变量以及包含我不会使用的字符的任何数据,并且如果变量的字符串长度超出限制我设置。

我担心我的一些客户群由于这个 cookie 问题而无法使用该网站。通过查看用户代理信息,我发现蜘蛛主要负责我的网站中止请求的页面。

有谁了解这种行为,并且可能知道向服务器发送未知 cookie 的意义?

4

1 回答 1

0

这些可能来自几个地方。

正如您所猜测的,cookie 可以在客户端使用 JavaScript 设置。也可以为整个域及其所有子域设置它们,例如,yoursite.example.com可以为 设置 cookie .example.com,然后将其发送到example.com 的任何子域。

无论哪种情况,您的服务器都可能不是 cookie 的目标。就像 JavaScript 可以设置一个 cookie(带有document.cookie)一样,它也可以从这些 cookie 中读取。这是在浏览会话中使数据在页面之间持久保存的最广泛支持的方法之一;数据被发送到服务器的事实可能只是一个意想不到的副作用。您在分析脚本或广告网络跟踪等方面经常看到这一点。

一般来说,这些 cookie 没什么好担心的。只要您始终验证用户输入,就可以了。

如果您担心 JavaScript 设置的 cookie 会覆盖您的cookie,您可以将 cookie 设置为仅 HTTP。请参阅setcookie 上的 PHP 文档以了解如何执行此操作。

于 2012-10-25T15:28:50.940 回答