2014-09-22 160 views
6

我想知道w3techs如何知道给定服务器何时使用Node.js. http://w3techs.com/technologies/details/ws-nodejs/all/all如何知道服务器是否在运行Node.js?

我猜他们看一些特定的http标题。

例如:X-Powered-By:Express

但不是每一个节点模块产生这样的标题。

您是否知道常用节点模块生成的其他方式或类似指纹?

+6

有很多关于指纹识别服务器的特点,从他们与下作出反应的数据到数据包被分块发送的方式。但是,你说得对,因为没有万无一失的方法,特别是在一个甚至不需要运行HTTP的Node.js服务器上,而且非常灵活。 – Brad 2014-09-22 15:39:42

+2

所以没有解决方案? – Unitech 2014-09-22 15:59:57

+2

不是。他们也可以在前面运行一些类似Nginx的东西,并且你会更加难以知道后端是怎么写入的。 – 2014-09-22 18:42:48

回答

6

正如@brad,@ jessie-a-morris,@tknew的评论已经指出的那样,没有简单易用的方法可以轻松地在您自己的分析器中重复使用。

w3techs自己的信息引用:‘究竟是如何做网站分析工作’

http://w3techs.com/faq特别章节解释

...我们在网页中搜索识别技术使用情况的特定模式,类似于病毒扫描程序搜索文件中的模式以识别病毒的方式。我们使用正则表达式和DOM遍历的组合来进行此搜索。我们已经确定了数千个指标用于技术使用。这些指标具有不同的优先级,并根据具体情况下是否存在特定指标组合,我们得出结论。

这些是由所述指示器中使用的信息的例子:

  • 网页
  • 具体HTML标记的HTML元素,例如发电机元标记
  • JavaScript代码
  • CSS代码
  • 网站的网址结构
  • 非现场链接
  • 个HTTP标头,例如饼干
  • HTTP响应的具体要求,例如压缩

大量的研究是必要建立分析仪,我们不断完善这一切的时候。我们希望它是最好的网站分析仪...

http://w3techs.com/disclaimer指出

...为了获得网站的任何信息,我们依靠自己的网站,他们的所有者或其网站管理员提供此类信息。有些网站比其他网站更愿意分享这类信息。一些技术可能提供更多手段来揭示其使用情况的信息。

多“我们可能不会”,“在某些情况下”,“一些技术”,“不准确的结果”如下

+2

虽然这确实回答了我想像OP是在深入分析方法寻找的问题,但好的工作! – 2014-09-23 19:48:23

+2

@SepepDeprivedBulbasaur我完全同意我的答案不能“解释”任何事情。起初,我只是想根据原始OP的问题发表评论:“你已经尝试了什么?你在w3techs上问过他们是如何做到的?”但它会隐藏在“显示更多评论”按钮下。发布w3techs的几千个优先级概率指标将是唯一可以接受的答案,这个奇怪的问题(从这个意义上来说,这很有用)的问题 – xmojmr 2014-09-23 19:57:28

相关问题