如何判断网站是否在使用Drupal 7


Answers:


20

一些明显的赠品是drupal 7:

  • <head>HTML部分中的RDF
  • 的元标记 <meta name="Generator" content="Drupal 7 (http://drupal.org)" />
  • 执行jQuery.fn.jquery;显示jQuery版本为1.4.4或1.5.2(使用jQuery更新)
  • 只有一个<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />-这是一个著名的drupal 6 bug(在该<head>节中有两个)
  • 的HTTP响应标头 X-Generator: Drupal 7 (http://drupal.org)

其他选项包括使用“嗅探器”,我最喜欢的是“ Whatweb”-https: //github.com/urbanadventurer/WhatWeb。Whatweb是(红宝石)命令行工具,不仅可以嗅探该站点正在使用drupal的事实,而且还可以嗅探主要版本和次要版本


其中只有两点可以帮助您了解Drupal站点是否正在使用Drupal 7。其他两个点依然有效为Drupal 8
kiamlaluno

幸运的是,目前尚无人在生产Drupal 8;)
Wiifm 2011年

我怀疑OP是否真正需要了解站点何时使用Drupal 7,而不是任何更高版本。如果他真的需要知道站点何时使用Drupal 7,则其他方法对他没有帮助。:-)
kiamlaluno

元标记错误非常有趣。没有修补的任何原因?
Sam152

它实际上是为解决安全漏洞而引入的-在此处了解更多信息drupal.org/node/451304-还有一些drupal 6的变通办法,可以将这个数字减少到1
wiifm 2011年

6

除非有人将其取出,否则您可以在下面查找标签

<meta name="generator" content="Drupal 7 (http://drupal.org)" />

但是从语法上讲,我只是在寻找一种可以确定并且看不到任何东西的方法。jQuery现在需要包装

(function ($) {

})(jQuery);

但是某些较早的Drupal网站也可以通过自定义的方式进行处理。

我认为答案是您不能100%确定。


matt v和jimajammas的答案都比我的好:)
joevallender

我认为他们的答案不会比您的答案好得多。实际上,您可能会说没有100%确定方法。
marcvangend 2011年

6

一种快速的方法是尝试点击http://example.com/CHANGELOG.txt URL,以查看更改日志报告所使用的版本。例如,对于Drupal.org来说确实如此:http : //drupal.org/CHANGELOG.txt


2
感谢您的提及。实际上,在提出这个问题之前,我确实在所查看的网站上进行了尝试,但是他们删除了CHANGELOG.txt-就像我总是自己做一件事:-)
marcvangend 2011年

大多数Web服务器配置将阻止在Webroot中下载.txt文件。并且我鼓励所有服务于drupal的网络服务器都这样做(以防止暴露主要和次要版本的drupal)
wiifm 2011年

1
@wiifm当然可以,但是很多都不要。
Matt V.

6

您还可以检查HTTP标头(在Drupal 7中),例如“ X-Generator Drupal 7”。这是指向页面的链接,该页面解释了如何删除该页面(如果有兴趣的话):http : //drupal.org/node/982034


4

另一种方法是查看Javascript Drupal.behaviors对象。在Drupal 6中,init函数像

Drupal.behaviors.foo = function () {
  // ...
}

Drupal 7中,就像

Drupal.behaviors.foo = {
  attach: function () {
    // ...
  }
}

不过,对于Drupal 8也是如此。到目前为止,还没有运行Drupal 8的站点,但是一旦它们出现,您将无法再使用此方法。
kiamlaluno

除了生成器头之外,这里概述的所有答案几乎都可以这么说。
mpdonadio

2

您可以查看加载了哪些CSS文件。乍一看,Drupal 6加载modules / system / system.css,而Drupal 7加载modules / system / system.base.css。


3
是的,但是在正确配置的站点(即启用CSS聚合)上,此操作无效。
marcvangend 2011年

是的,再加上isthissitebuiltwithdrupal.com网站也不总是正确的,仅以在www.jacksonville.com上的狂徒为例。
Jimajamma 2011年

即使它们具有聚合,您也可以直接访问URL,例如example.com/modules/system/system.base.css = D7
cam8001

2

IRC中的某人建议您查看jQuery版本:如果是1.3.2,则可以肯定它是Drupal 6网站。也就是说,该方法也不是绝对可靠的。


2
刚刚检查了Drupal 6.22。misc / jquery.js在注释中和检查jQuery.fn.jquery时显示1.2.6。
mpdonadio

2
是的,对不起,您是对的。安装jQuery Update之后,您将在D6网站上获得jQuery 1.3.2 。
marcvangend 2011年

2

我通常会在jQuery.extend(Drupal.settings,...
A 头的标头中看到大量的javascript“模糊”。典型的Drupal 6那里的字符串很小,而每个Drupal 7都有很大的字符串。


1
这完全取决于使用Drupal JavaScript设置的模块数量。
kiamlaluno

当然但在D7它比D6路大(我不知道为什么还没有),但比较的源代码france.fr(D6)和examiner.com(D7),两者都是大网站。区别只是惊人的;)
tostinni 2011年

这种差异不是一成不变的;您可能拥有一个Drupal 6网站,其jQuery.extend()部分比Drupal 7网站更大。这还取决于两个站点中使用的第三方模块的数量以及它们是哪个模块。
kiamlaluno


0

我一直使用Wappalyzer 来检测网站的技术,该Wappalyzer网站也是基于Drupal 7的。

Wappalyzer是一个浏览器扩展,可发现网站上使用的技术。它检测内容管理系统,电子商务平台,Web服务器,JavaScript框架,分析工具等。


0

您可以CHANGELOG.txt在Drupal文件夹中的文件中找到版本信息。

您需要做的就是显示此文件。


我不愿意将它破解给您,但是有人在大约6年之前击败了您;-)虽然欢迎使用Drupal答案。继续提问和回答!
marcvangend
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.