Ofe*_*ich 60 javascript sentry uglifyjs raven source-maps
我正在使用UglifyJS来缩小和整理我的资源,而Sentry则报告我的生产环境中的错误.
为了以可读的方式从Sentry获取错误,我需要添加source-map
在生产服务器中执行它是否安全,或者源映射文件是否应仅存在于暂存环境中?
有没有办法在生产环境中保护它们?
Joh*_*son 47
正在寻找可能的解决方案,如果有人没有专门使用Sentry,我可以访问这篇博文(具有讽刺意味的是Sentry博客文章):
https://blog.sentry.io/2015/10/29/debuggable-javascript-with-source-maps.html
哪里有一个有趣的想法:"私人源地图".这意味着在某些无法从互联网访问的地方生成源地图(例如您的公司VPN),因此只有您或您的团队才能访问源地图文件.
引用帖子的"私人来源地图"部分:
[...]我们的所有示例都假设您的源地图是公开可用的,并且与您执行的JavaScript代码在同一服务器上提供服务.在这种情况下,任何开发人员都可以使用它们来获取原始源代码.
为了防止这种情况发生,您可以改为从只能由开发团队访问的服务器提供源映射,而不是提供可公开访问的sourceMappingURL.例如,只能从公司的VPN访问的服务器.
//#sourceMappingURL:HTTP://company.intranet/app/static/app.min.js.map
当非团队成员在打开开发人员工具的情况下访问您的应用程序时,他们将尝试下载此源地图,但会收到404(或403)HTTP错误,并且不会应用源地图.
对我来说似乎是个好主意!