Nginx配置详解

目录

简介

Nginx是什么?

Nginx全局配置

全局配置之事件类配置

使用Nginx的HTTP模块配置静态Web服务器

HTTP配置项

HTTP客户端配置项

 文件操作配置项

虚拟主机与请求分发

网络连接配置

server配置块

使用Nginx的HTTP的代理模块配置反向代理服务器

Nginx四层代理


简介

        在公司的工作中,接触到阿里云的组网方式和网络架构这一块,其中除了SLB,最常用的还有Nginx Web服务器。其中涉及到Nginx的四层代理、七层代理、静态路由、反向代理等知识。在参阅了相关的学习资料后,今天就对常用的Nginx模块以及配置方法做一个较为详细的总结记录。

Nginx是什么?

        Nginx是俄罗斯的Igor Sysoev在为Rambler Media工作期间,使用C语言开发的具有高可靠性、高性能、高扩展性且支持诸多操作系统等特性的跨平台的Web服务器,使用Nginx服务器,能够减小其上游服务器的压力。因为其出色的性能,其作为Web服务器被广泛应用到了大流量的网站上,如国内的腾讯、网易和阿里等等。

        Nginx中包含了许多的模块,用户在安装的时候可以根据自己具体使用到的模块进行安装,目前使用最多的应该就是HTTP模块,使用HTTP的代理模块属于Nginx的七层应用代理,本文的末尾会补充讲一下Nginx的四层应用代理,以及它们之间的区别。首先,我们就从最常用的HTTP模块讲起,介绍具体使用过程中如何配置使用HTTP模块。

Nginx全局配置

        默认编译安装Nginx后,Nginx的默认安装根目录为/usr/local/nginx,Nginx默认的可执行文件的路径为/usr/local/nginx/sbin/nginx,Nginx默认的配置文件路径为/usr/local/nginx/conf/nginx.conf,用户可以通过参数在编译时自行设置Nginx的这些路径。在Nginx的配置文件中,大概由以下的一些配置项组成,Nginx全局配置、Nginx事件类配置、Nginx模块配置(如HTTP模块),其中模块配置中又包含了虚拟服务器配置块、location配置块、负载均衡配置块等等。这些配置定义了Nginx的工作方式。在Nginx的配置中,可以使用include包含预定义的配置文件,只要保证配置文件格式正确,include可以被包含在HTTP、Server等配置块。

        首先需要介绍的是Nginx的全局配置,具体的配置字段及说明如图

全局配置之事件类配置

其中最后两个配置项应当放在events事件类配置项中,在事件类配置项中还可以配置以下配置项

负载均衡锁:

accept_mutex on(默认)/off;

负载均衡锁文件路径:

lock_file path/file;

使用负载均衡锁后到真正建立连接时间的最大延迟:

accept_mutex_delay 1000ms(默认500ms);

批量建立新连接:

multi_accept on/off(默认);

选择事件模型(对于Linux来说有以下三种,如果未选择的话Nginx会自动使用最适合的事件模型):

use poll/select/epoll;

Nginx配置文件的顶部应该应该先定义全局配置,因此该配置处于Nginx的配置文件顶部。

使用Nginx的HTTP模块配置静态Web服务器

        在Nginx的配置中定义了全局配置之后,就可以开始对Nginx中使用的模块进行配置,本文主要针对HTTP模块的配置做详细讲解。在Nginx中支持使用HTTP模块配置静态Web服务器,所谓静态Web服务器,也就是不使用反向代理,Nginx在接收到请求后不通过上游的服务器处理,而是直接由Nginx处理并返回请求。由于Nginx的功能很强大,涉及到的配置项较多,这里只列出了常用的一些配置项。

HTTP配置项

        使用Nginx的HTTP模块时,server配置块,location配置块都是包含在HTTP配置块中的,首先我们需要定义HTTP的相关配置参数,其实也就是和HTTP请求相关的一些参数,常见的配置项如下

  • 2
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值