有没有其他方法可以从URL检测CMS?如果是,PHP中是否有任何可用的API或任何其他语言? 网站http://whatcms.org/就是我想到的一个例子;它是如何进行检测的?
答案 0 :(得分:1)
您可以检查生成器的元标记。 大多数CMS的名称和版本都在那里做广告。
这是你要追踪的标签。
<meta name="generator" content="Joomla! - Open Source Content Management" />
此代码将尝试找到标记以提取content
属性。
$doc = new DOMDocument();
$doc->loadHTMLFile('http://joomla.org');
$xpath = new DOMXPath($doc);
$generators = $xpath->query('//html/head/meta[@name="generator"]');
echo $generators->item(0)->getAttribute('content');
此代码回显Joomla! - Open Source Content Management
答案 1 :(得分:1)
Nor Wappalyzer和whatCMS从URL检测CMS,他们下载代码,并检查元数据。如果你付出了一些努力,你也可以自己使用curl来检索页面,然后解析出元数据,扫描关键字。
答案 2 :(得分:1)
Detect-CMS PHP library现在有一个Krisseck。
来自README.md:
include("Detect-CMS/Detect-CMS.php");
$domain = "http://google.com";
$cms = new DetectCMS($domain);
if($cms->getResult()) {
echo "Detected CMS: ".$cms->getResult();
} else {
echo "CMS couldn't be detected";
}
答案 3 :(得分:0)
如果使用常见的CMS(例如OpenCart,WordPress,Magento,Joomla等),Chrome / Firefox扩展程序Wappalyzer将会很方便。