Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
有没有一种解决方案可以让Puppeter(或替代方案)在Azure Web App服务上运行?(403期)_Azure_Azure Web App Service_Puppeteer - Fatal编程技术网

有没有一种解决方案可以让Puppeter(或替代方案)在Azure Web App服务上运行?(403期)

有没有一种解决方案可以让Puppeter(或替代方案)在Azure Web App服务上运行?(403期),azure,azure-web-app-service,puppeteer,Azure,Azure Web App Service,Puppeteer,我们在本地将应用程序发布到Azure web应用程序服务时,试图使用Puppeter js导出pdf时遇到了一个问题 一旦木偶演员在访问要导出pdf的页面时启动了无头浏览器,我们就会得到一个显示蓝色页面的文件,其中包含403禁止访问消息 它正在导出的站点是来自我们的应用程序所在的同一域的公共视图。此站点没有身份验证,我们认为问题与Azure防火墙机制试图阻止无头浏览器访问服务器有关 我们的环境在Docker容器下使用Ubuntu20.04。由于Azure基础设施中的Docker容器,我们在运行P

我们在本地将应用程序发布到Azure web应用程序服务时,试图使用Puppeter js导出pdf时遇到了一个问题

一旦木偶演员在访问要导出pdf的页面时启动了无头浏览器,我们就会得到一个显示蓝色页面的文件,其中包含403禁止访问消息

它正在导出的站点是来自我们的应用程序所在的同一域的公共视图。此站点没有身份验证,我们认为问题与Azure防火墙机制试图阻止无头浏览器访问服务器有关

我们的环境在Docker容器下使用Ubuntu20.04。由于Azure基础设施中的Docker容器,我们在运行Puppeter时遇到了问题,但一旦正确安装了所有依赖项,我们就无法从同一个域成功导出pdf(我们尝试从外部域(如google.com)导出pdf,效果很好)

是否存在Azure阻止无头浏览器访问的可能性,或者是我们从Azure门户跳过的配置问题

我们尝试以多种不同的方式启动Puppeter浏览器,如无头或无安全沙箱,或使用外部chrome二进制文件,如
wait puppeter.connect({browserWSEndpoint:'wss://chrome.browserless.io/“})
我们还尝试了无头检测和匿名用户代理。到目前为止,所有这些都不起作用。这是我们的结果:

请导航到您的web应用程序的网络页面,检查访问限制

请参阅以下链接:

当向您的应用程序发出请求时,将计算发件人地址 违反访问限制列表中的规则。如果发件人地址是 位于配置了服务终结点的子网中 将源子网与虚拟子网进行比较 访问限制列表中的网络规则。如果地址不是 允许访问基于列表中的规则,服务将答复 带有HTTP 403状态代码


此外,您还应该查看您的应用程序日志。您好,@doris lv谢谢您的回答。我们尝试将我们的网站IP放在访问限制部分,出于某种原因,我可以使用无头浏览器从本地服务器向azure网站发出请求,它工作正常,但当我在同一服务器上执行相同操作时,它会以403继续响应。我猜这一定是我们缺少的Azure配置或管理员限制。奇怪的是,它是从外部服务器而不是从同一台服务器上运行的。顺便说一句,我们对Azure平台非常陌生,我们在日志部分看到的信息不是我们需要的正确信息,这是我们节点应用程序中的错误和日志。请让我知道我的回复是否有用,谢谢。非常感谢,Doris,我在你的回答中留下了评论。