【发布时间】:2014-03-17 10:28:58
【问题描述】:
我正在寻找以 HTML 格式向机器人提供内容,然后为所有其他请求呈现 index.html 并让我的 Backbone.js 应用程序启动。
我最好尝试为 Google、Facebook 等创建一组已知机器人...然后如果用户代理不在该数组中,则呈现 index.html,或者 Node 的 Express 中有什么东西可以说“这是一个真正的用户,而不是任何类型的机器人”?
app.use(function(req, res) {
var ua = req.headers['user-agent'];
// TODO
res.render('index.html');
});
【问题讨论】:
-
不,没有。你不应该那样做。如果 Google 发现您会因为向机器人提供不同的内容而受到严厉惩罚,然后再向用户提供。
-
@TheHippo 你觉得呢?这将是相同的内容,即。例如,有关“项目”的信息,但它不会通过模板/JS 呈现,而是直接标记
-
这称为伪装,违反了 Google 的服务条款。 (Official documentation at Google 和 another SO question)
-
Google 还会定期抓取您无法检测到的普通用户代理。 (或者至少非常难。)
标签: node.js express seo user-agent