Hello!
2016-06-30 22:50 GMT-07:00 ch ren:
> 向上面这种配置,那3个set的变量还有@proxy, @next, @source.
> 其实都是我用于内部实现用的。这个server块还有很多其他配置省略了。感觉这种将实际业务的配置和用于功能实现的配置交织在一起的方式很不利于维护,并且很复杂。
>
> 请问各位大神有没有遇到过类似问题,是怎么简化nginx的配置的?
>
建议尽量把逻辑放在 Lua 代码中,使用 ngx_lua 提供的 Lua API 来和 nginx
交互,以实现高度的动态性和定制化。nginx.conf 应尽量保持简单。比如 CloudFlare 这样的 CDN
公司服务着百万级别的不同的客户站点,各个客户站点的配置和逻辑都千差万别,但 nginx.conf 还是比较简单的,几乎所有业务逻辑都是在
Lua 代码基中搞定的。如果把这些都写在 nginx.conf 里面,不容易实现动态更新不说,同时也极难维护和伸缩,性能也会很差。
Regards,
-agentzh