Rails + AngularJS + Prerender.io(本地服务器)设置不呈现页面

时间:2015-03-13 11:42:21

标签: ruby-on-rails angularjs phantomjs single-page-application prerender

我正在尝试在本地设置Prerender.io服务器。我是Rails + AngularJs应用程序。

已经拉出prerender repo并用节点启动服务器。

$ export PORT=3001
$ node server.js
2015-03-13T08:15:48.152Z starting worker thread #0
2015-03-13T08:15:48.159Z starting worker thread #1
2015-03-13T08:15:48.161Z starting worker thread #2
2015-03-13T08:15:48.163Z starting worker thread #3
2015-03-13T08:15:48.506Z starting phantom on port [12301]
2015-03-13T08:15:48.523Z Server running on port 3001
2015-03-13T08:15:48.524Z starting phantom on port [12304]
2015-03-13T08:15:48.526Z starting phantom on port [12303]
2015-03-13T08:15:48.530Z starting phantom on port [12302]
2015-03-13T08:15:48.541Z Server running on port 3001
2015-03-13T08:15:48.548Z Server running on port 3001
2015-03-13T08:15:48.558Z Server running on port 3001
2015-03-13T08:15:51.750Z started phantom
2015-03-13T08:15:51.755Z started phantom
2015-03-13T08:15:51.757Z started phantom
2015-03-13T08:15:51.758Z started phantom
2015-03-13T08:15:56.715Z getting 

如果我点击了以下网址,我正在正确呈现页面。

localhost:3001/http://localhost:3000/register

但是当使用Rails Prerender middleware时,Page不会呈现并且显示空页面。我打到URL下面。

http://localhost:3000/register?_escaped_fragment_=

看起来,它正确地命中了服务器和状态为200的响应,但是没有显示页面。

enter image description here

使用转义片段输出

enter image description here

任何帮助都会非常明显。如果需要,我可以提供更多细节。

使用PUMA服务器

enter image description here

来自Prerender.io的回复

enter image description here

1 个答案:

答案 0 :(得分:1)

您使用的是瘦网络服务器吗?您应确保使用Puma或Unicorn等多进程服务器,因为Rails会阻止I / O等待Prerender响应。