使用Node.js进行SEO重定向

时间:2014-05-20 14:10:20

标签: node.js angularjs express sails.js

我正在使用Angular和Node.js,我有一个重定向机器人来加载SEO内容的页面。在表达中我有这样的事情:

req.isBrowser = function () {
  var pattern = /(opera|aol|msie|firefox|chrome|konqueror|safari|netscape|navigator|mosaic|lynx|amaya|omniweb|avant|camino|flock|seamonkey|mozilla|gecko)+/i;
  return pattern.test(req.headers['user-agent']);
};

我会在GET请求中使用它来进行必要的重定向。虽然在Sails中很难弄清楚如何很好地做到这一点。有没有我可以运行此检查的地方,只是自动重定向到公共文件夹中的静态文件,如果它是浏览器,否则通过jade / ejs运行它,如果它是机器人。

1 个答案:

答案 0 :(得分:0)

如果您阅读sails doc policies,它会谈到如何为sails进行身份验证。意味着他们可以在每次路线被击中时运行一个功能。

/config
  - policies.js

// policies.js
module.exports.policies = {
  "*": "isBrowser"
      // or some controller
  ViewController: {
    "index": "isBrowser"
  },
}


/api
  /policies
    - create a file name "isBrowser.js"

// sBrowser.js
module.exports = function(req, res, next) {

  if (/your logic/) {
    // go back to your normal route function.
    return next();
  } else {
    // do something about SEO bot.
  }

};