我正在构建一个存储用户生成图像的应用程序。这些图像在整个应用程序中以画廊类型视图使用。它们还经常更新/重新生成。
我遇到的问题是当生成新图像时,我将其存储在公共目录中。这会导致流星服务器“重新启动”。
有没有办法关闭文件观看?
我正在构建一个存储用户生成图像的应用程序。这些图像在整个应用程序中以画廊类型视图使用。它们还经常更新/重新生成。
我遇到的问题是当生成新图像时,我将其存储在公共目录中。这会导致流星服务器“重新启动”。
有没有办法关闭文件观看?
我认为目前不可能
即使您可以停下来观看它也无法解决您的问题
当流星检测到更改时,它会重建服务器(.meteor/local/build/)并从那里提供服务。
公共文件夹发送到那里:“.meteor/local/build/static/”
在您停止关注更新的情况下,您也将停止查看客户可以访问的内容的变化。
我发现这种特殊情况可以通过用另一种处理静态资产的工具替换流星来解决。
我有一个流星应用程序来处理数据和文件同步,但我还保留了一个 Apache 作为文件分发管理器。
我的流星应用程序很小,资产可以发送到其他地方(例如:投入生产时的 S3)。
我刚刚在这个网站上找到了一个类似问题的答案,如果您还没有找到解决方案,我认为这可能会有所帮助。
我终于找到了解决方法。我把所有东西都放在 /public/lib/. 然后,/usr/lib/meteor/app/run.js 的第 286 行,我添加了我不希望 Meteor 观看的文件夹:self.exclude_paths = [ path.join(app_dir, '.meteor', ' local'), path.join(app_dir, 'public', 'lib') ]; 这样我就可以在 lib 中拥有尽可能多的文件,并且它们不会减慢所有速度。包含路径是“/lib/dojo/dojo.js”。
通过马修
我最终将文件导出到 S3 存储桶,这样它就不会影响 Meteor 观看。
我也喜欢对中小型项目使用开发模式,将文件保存到 /public 是个糟糕的主意。
Recommand Meteor-Files 将所有文件(如 json 数据)保存到 mongodb 或 s3 中,并像本地文件一样使用它。