# 产品在哪里留下痕迹

产品在客户网站上留下的各类代码，大致按可靠程度从高到低排列。通常只需其中一类，即找到客户最多的那一类。

### 加载其脚本的地址

大多数产品通过 script 标签安装，脚本来自产品自己的主机：CDN 或静态资源子域名。这是首先要找的东西。

`"static.hotjar.com"` (https://zh.publicwww.com/websites/%22static.hotjar.com%22/)

### 所安装代码片段中的设置

客户粘贴的代码往往会设置一个以产品命名的变量，或调用一个以产品命名的函数。即使脚本本身从别处加载（与网站自己的脚本打包在一起，或通过代理提供），这段代码也仍然存在。

`"_hjSettings"` (https://zh.publicwww.com/websites/%22_hjSettings%22/)

### 账户 ID

许多代码片段以固定格式包含客户的账户 ID。搜索其中固定不变的部分，再用 [snipexp:](https://zh.publicwww.com/docs/query-syntax/regex/) 把各个 ID 提取出来。

`"googletagmanager.com/gtm.js" snipexp:|(GTM-[A-Z0-9]+)|` (https://zh.publicwww.com/websites/%22googletagmanager.com%2Fgtm.js%22+snipexp%3A%7C%28GTM-%5BA-Z0-9%5D%2B%29%7C/)

### 小组件的元素 ID 或类名

小组件会在网页上放置属于自己的元素：一个带有该产品专属 ID 或类名的容器。

`"class=\"g-recaptcha\""` (https://zh.publicwww.com/websites/%22class%3D%5C%22g-recaptcha%5C%22%22/)

### 插件或模块文件夹

在 CMS 上，以插件形式安装的产品位于以其命名的文件夹中，这个文件夹会出现在其脚本和样式表的地址里。

`"/wp-content/plugins/contact-form-7/"` (https://zh.publicwww.com/websites/%22%2Fwp-content%2Fplugins%2Fcontact-form-7%2F%22/)

### 指向产品自身页面的链接

如果产品在自己的域名上为每个客户托管门户、帮助中心或预约页面，客户的网站就会链接到这些页面，而且通常链接到该客户在产品域名下的专属子域名。

`".zendesk.com/hc/"` (https://zh.publicwww.com/websites/%22.zendesk.com%2Fhc%2F%22/)

### 从产品存储空间提供的文件

产品为客户存放的图片和文档，从产品的存储地址加载。

`"images.ctfassets.net"` (https://zh.publicwww.com/websites/%22images.ctfassets.net%22/)

### generator 标签

建站工具和 CMS 常常在 meta 标签中写明自己的名称，有时还带有版本号。

`"content=\"Joomla!"` (https://zh.publicwww.com/websites/%22content%3D%5C%22Joomla%21%22/)

### HTTP 头和 Cookie

响应头会与每个网页一起编入索引，因此，会设置自有响应头或 Cookie 的服务器、框架或托管服务商，也同样可以搜索。

`"x-powered-by: express"` (https://zh.publicwww.com/websites/%22x-powered-by%3A+express%22/) `"set-cookie: PHPSESSID"` (https://zh.publicwww.com/websites/%22set-cookie%3A+PHPSESSID%22/)

如何判断一条痕迹是否真的属于该产品的客户，以及如何组合多条痕迹，请见[检查特征码](https://zh.publicwww.com/docs/signatures/checking/)。

Source: https://zh.publicwww.com/docs/signatures/traces/
