如何通过在modulus.io上托管的流星应用程序来使用spiderable

我试图在我的流星应用上使用SSL模数进行spiderable作品。 我有Meteor 1.0,iron:router 1.0,spiderable和phantomjs的节点包

所有工作都在localhost上。 但是一旦我部署在Modulus上,首先我有错误

spiderable: phantomjs failed: null

然后,我在模数面板中添加了以下环境变量:

METEOR_PKG_SPIDERABLE_PHANTOMJS_ARGS = --ssl-protocol=tlsv1 --ignore-ssl-errors=yes --debug=true

这仍然不起作用,并且调试在模块控制台中输出多次(如它正在循环一个错误)以下消息:

2014-12-03T17:01:00 [DEBUG] WebPage - evaluateJavaScript "(function() { return (function () {
if (typeof Meteor === 'undefined'
    || Meteor.status === undefined
    || !Meteor.status().connected) {
  return false;
}
if (typeof Package === 'undefined'
    || Package.spiderable === undefined
    || Package.spiderable.Spiderable === undefined
    || !Package.spiderable.Spiderable._initialSubscriptionsStarted) {
  return false;
}
Tracker.flush();
return DDP._allSubscriptionsReady();
})(); })()" 
2014-12-03T17:01:00 [DEBUG] WebPage - evaluateJavaScript result QVariant(bool, false) 

如果有人知道如何解决这个问题,或者成功地使用SSL和spiderable在modulus.io上部署流星项目。 让我知道做到这一点的好方法:)

非常感谢 !


我解决了我的问题,如下所示:

  • 我在本地安装了phantomjs并运行测试脚本,网址为http://www.meteorpedia.com/read/spiderable/

    phantomjs phantomtest.js

  • 这给了我更多关于错误的细节:解析错误。 然后,这是一个JavaScript文件,一旦编译/缩小,由select2引起的错误。 使用它的js库是flat-ui.js(http://designmodo.github.io/Flat-UI/)。

    我通过测试* .meteor.com上的许多部署并添加/删除.js文件来发现此问题。

  • 我编辑flat-ui.js库以避免解析错误。

  • 我重新部署在了modulus.io和* .meteor.com上。 所有在* .meteor.com上都工作得很好,但对于modulus.io仍然无效。 这让我想到了一个SSL错误,但是我只在modulus.io日志中看到了“spiderable:phantomjs failed:null”。

  • 我在模数面板中添加以下环境变量:

    METEOR_PKG_SPIDERABLE_PHANTOMJS_ARGS = --debug = true

  • 它似乎是一个“SSL握手错误”:

    [DEBUG] Network - Resource request error: 6 ( "SSL handshake failed" )
    
  • 我向METEOR_PKG_SPIDERABLE_PHANTOMJS_ARGS环境变量添加了另一个选项:

    METEOR_PKG_SPIDERABLE_PHANTOMJS_ARGS = --ignore-ssl-errors = yes --debug = true

  • 现在在modulus.io上一切正常。

    总结一下:

  • 解决JavaScript错误
  • 添加METEOR_PKG_SPIDERABLE_PHANTOMJS_ARGS = --ignore-ssl-errors = yes
  • 我希望这会帮助一些帅哥,

    链接地址: http://www.djcxy.com/p/82759.html

    上一篇: How to use spiderable with a meteor app hosted on modulus.io

    下一篇: Encrypt the stored procedure created by SqlDependency