Nginx中4个有意义的配置,你都用过吗?
Nginx是一个非常非常优秀的WEB服务器,比较轻巧,其配置也非常简洁明了,同时Nginx引入了很多有意义的特征,而这些特征仅仅通过简单的配置就能够开启,下面我们就来聊聊4个比较有意义的特征配置。
匿名server
看到上图中的配置了吗?你没有看错,server_name是一个空字符串,在Nginx官方文档中,这种情况叫做未定义服务名称,开启这种配置有什么作用呢?一方面能够精确的对我们的配置域名进行精确的响应,另一种情况就是起到一定的安全作用,尽量不处理非法请求,即对于这些非法的请求,我们能够直接返回404等等状态码,这里补充一句,所谓的非法请求就是请求的域名不在配置文件里面的所有请求,这些请求理论上都是恶意的、带有攻击性的。
单像素透明GIF
看到上面的图片了吗?是不是非常简单呢,所谓单像素透明GIF图片就是一个非常小的透明的图片,用户是看不到的,并且这个图片是放在内存里面的,所以响应速度非常快,但是Nginx提供这个有什么作用呢?其目的就是用统一的接口去处理各种不需要返回值的情况,比如我们可以用来统计广告点击、某个按钮的点击等等情况,即点击广告的时候就会向Nginx端传输请求参数并生成访问日志,最后通过脚本去分析这个访问日志,从而得到最后广告点击统计情况。
status配置
仅通过上图中简单的配置,我们就能够通过浏览器访问一个URL得到此刻Nginx的运行情况,比如总的已经接收的链接数、活跃的链接数、空闲状态的链接数、总的已经成功的SSL握手数等等信息,有了这些信息,我们就能够初步的知道Nginx此刻是否运行正常,如果运行不正常,我们就要采取相应的决策了,以免Nginx因为访问量大而导致没有响应,从而影响用户体验,关于该配置的其他统计信息的输出,可以到Nginx官方文档或者自己搭建一个本地环境去了解,这里建议还是搭建一个本地环境,这样效果更好。
谷歌性能工具配置
谷歌的gperftools是一个工具集,它里面包括了一些非常优秀的性能分析工具(包括对CPU和内存的分析),用于分析程序的性能并找到性能瓶颈,从而方便我们优化程序,这么优秀的工具对于Nginx来说,肯定也是需要的,于是我们可以通过上面的图片的配置开启Nginx里面的配置,当然分析工具还是需要你单独安装的。
总之,用好上面的4个非常有意义的Nginx配置,一定能够给我们很大的帮助,比如通过状态配置,能够让我们清楚的看到Nginx某个时刻的运行情况,如果再加以一些脚本的处理,我们能够将这个输出写入一个文件或者其他地方,以方便之后查阅或者分析。