node.js - 解决 Ubuntu 服务器上的 net::ERR_TUNNEL_CONNECTION_FAILED

标签 node.js ubuntu devops puppeteer digital-ocean

我正在 Digital Ocean Droplet 上运行 puppeteer scraper。

  • 服务器是Ubuntu 18.04
  • ufw 已启用,并且 sshhttphttps 端口已启用。
  • 此抓取工具已由 pm2 运行

这是当前输出和代码片段。

0|server | 2019-12-23T09:09:27.266Z: [openPage] Error: net::ERR_TUNNEL_CONNECTION_FAILED at https://xxxx/xxxx

...
const browser = await puppeteer.launch({
     headless: false,
     args:["--no-sandbox", "--proxy-server=zproxy.lum-superproxy.io:22225"]
});
page = await browser.newPage()

// set random agent to page
await page.setUserAgent(agents[Math.floor(Math.random() * agents.length)])

await page.authenticate({
  username: process.env.USERNAME,
  password: process.env.PWD
})
....

加上 env 变量工作正常。我通过 console.log(process.env.USERNAME)

检查了这一点

最佳答案

如果您希望 Puppeteer 抓取 HTTPS 内容,请确保您的代理支持 HTTPS/SSL。

您可以轻松测试您的代理是否支持 SSL:

curl --proxy [ip]:[port] https://ipinfo.io/ip

关于node.js - 解决 Ubuntu 服务器上的 net::ERR_TUNNEL_CONNECTION_FAILED,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59453443/

相关文章:

ubuntu - lxc-克隆 : unrecognized option '--dir'

linux - 安装 PopcornTime 时找不到 .install 命令

git - 致命: git repository not found (but can go to URL) in Azure Devops?

ruby-on-rails - 在运行 Recipe 的其余部分之前使用 Chef 设置 DNS?

node.js - 无法从终端 ubuntu 18.04 LTS 正确安装 Mongodb

javascript - 如何使用 javascript 轻松修改 yaml 文件?

php - Laravel : Email Jobs are not attempted

powershell - 如何使用 docker run 命令执行 ps1 脚本?

javascript - require(events) === events.EventEmitter

sql - Sequelize 一对多关联错误