prerender.io node.js在azure上预呈现服务器

时间:2016-06-13 21:24:34

标签: node.js azure prerender

我在Azure网站上设置prerender.io呈现服务器https://github.com/prerender/prerender.git时遇到问题。

我在VS2015中创建了一个空白的Node.js Azure项目,node.js服务器启动正常并在本地呈现内容。

问题是当我部署到Azure时,我收到内部服务器错误,如下所示:

Application has thrown an uncaught exception and is terminated:
Error: write ENOTSUP
    at exports._errnoException (util.js:874:11)
    at ChildProcess.target._send (internal/child_process.js:606:18)
    at ChildProcess.target.send (internal/child_process.js:507:12)
    at sendHelper (cluster.js:699:8)
    at send (cluster.js:501:5)
    at cluster.js:477:7
    at SharedHandle.add (cluster.js:82:3)
    at queryServer (cluster.js:469:12)
    at Worker.onmessage (cluster.js:425:7)
    at ChildProcess.<anonymous> (cluster.js:713:8)

从错误中我只能怀疑请求和群集机制存在问题。我通过电子邮件发送了prerender.io,看看他们是否对正在发生的事情有任何见解。我也在网上搜索过高低,但似乎无法找到任何类似的问题作为参考。

所有node.js项目默认值都保留。我只将prerender.io node.js代码导入到vs2015项目中。正如我所说,它在当地工作。

2 个答案:

答案 0 :(得分:1)

从我的测试中,我发现我可以使用PowerShell在我的本地和Azure网站上运行prerender.IO。

我安装了软件包并使用了server.js代码,如下所示:

=

然后,我在Azure Web App服务上部署了这个项目。我使用powershell在kudu面板中运行了server.js,如下图所示: enter image description here

另一个问题,您使用的是哪个版本?我使用node.js版本是V4.2.3。

答案 1 :(得分:1)

  

你运行他们的中间件还是渲染服务器?我试图运行渲染服务器,我在节点6.2上。我在一个紧迫的期限内为项目取得了进展,所以我们采用了VM方式

感谢您提出此问题的帖子,我想确认Azure网络应用目前不支持Prerender,因为prerender使用的群集模块不支持命名管道连接,而azure Web应用程序使用命名管道连接进行连接iis with node.exe。我们将继续研究此问题,并在找到解决方法和解决方案后保持此线程更新。如果您有任何进一步的顾虑,请随时告诉我。