代码之家  ›  专栏  ›  技术社区  ›  PPShein

我如何将facebook爬虫机器人重定向到另一个网页?

  •  3
  • PPShein  · 技术社区  · 7 年前

    我开发了一个由PreactJS完成的小网站,它包含了主网站(PHP)的一些部分。众所周知,脸书机器人无法在共享时抓取javascript预呈现内容。这就是为什么我想重定向为允许facebook机器人爬行主网站(PHP),同时在NodeJS/ExpressJS中共享PreactJS完成的网站链接,如下所示:

    如果用户正在共享,如' https://www.mywebsite.com/category/trips/10 https://main.mywebsite.com/category/trips/10

    app.use('/*', function(req, res){
      if(req.headers['user-agent'] === 'facebookexternalhit/1.1') {
    
      }
    });
    
    2 回复  |  直到 7 年前
        1
  •  1
  •   Brad    5 年前

    代理

    express-http-proxy ,这使这变得简单。未经测试,但这应该让您开始:

    app.use((req, res, next) => {
      if (
        !req.headers['user-agent'] ||
        !req.headers['user-agent'].startsWith('facebookexternalhit')
      ) {
        return next();
      }
    
      return proxy('main.mywebsite.com')(req, res);
    });
    
        2
  •  0
  •   Az Emna    5 年前
    app.use('/*', function(req, res){
      if(req.headers['user-agent'] === 'facebookexternalhit/1.1') {
       res.redirect("https://main.mywebsite.com/category/trips/10")
      }
    });