CMS, 原创,

Cpgnuke 使用非浏览器获取页面内容为空原因以及处理方式

最近在使用flash等抓取 CpgNuke CMS 内容时获取不到信息。检查了下代码发现了原因。

我们知道,当我们用浏览器访问url的时候可以使用 $_SERVER[‘HTTP_USER_AGENT’] 获取到浏览器信息。

而在使用flash等其他的东西抓取网站内容的时候这个值其实是不存在的。

而在cpgnuke的 /include/cmsinit.inc 中,他判断这个是为空时退出,也就是为了防止其他的抓取工具抓取,解决方法就是将这行去掉
if (((empty($_SERVER['HTTP_USER_AGENT']) || $_SERVER['HTTP_USER_AGENT'] == '-') && !defined('XMLFEED')) || defined('CORE_PATH')) { exit; }
或者将判断不存在的参数去掉,如 $_SERVER[‘HTTP_USER_AGENT’]

这样就可以使用flash或其他工具直接获取网址的内容了

(697)

Related Post