后处理Nginx反向代理响应的最佳方法

我正在做一些关于从Apache切换到Nginx作为后端Grails应用程序前面的反向代理的研究.我正在玩一些URL重写,并且遇到了从后端发回的响应的问题.我可以处理位置标题重写,但我想知道处理实际内容的最佳方法是链接等.

nginx_substitutions_filter是首选方法还是有人用来在响应正文中进行内容替换的另一个模块?

我已经考虑过创建一个Grails插件来处理基于其他请求标题呈现正确的内容,但现在我认为最好在应用程序之外处理,以实现最大的灵活性和松耦合.

有没有关于为反向代理方案进行URL重写/响应后处理的最佳实践的文章?

最佳答案
您可以使用Lua模块捕获响应并像Lua字符串一样操作它.愚蠢的例子到大写输出:

res = ngx.location.capture('/some/path')
ngx.print(string.upper(res.body))

见http://wiki.nginx.org/HttpLuaModule#ngx.location.capture

dawei

【声明】:淮南站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。