Nginx

1 Nginx简介

Nginx是一个高性能的Web服务器和反向代理的软件。
Web服务器:就是运行我们web服务的容器,提供web功能,还有tomcat也提供类似的功能。
代理是软件架构和网络设计中,非常重要的一个概念。有两种代理:正向代理和反向代理。
正向代理
用户端设置代理服务器。
所有的请求都由代理服务器发出,无法判断代理了多少用户端,叫正向代理。
反向代理
和正向代理相反:在服务端设置代理,所有请求,由服务端接受,然后再由代理服务器发到 后方的
服务器。这么一来,所有请求,都由一个服务器接收,无法判断代理了多少服务端。这就是反向代
理。
利用反向代理,就可以将请求分发到系统内部的多个节点上,从而减少每个节点的并发数。而这些节
点在外界看来,就是一个系统,表现出唯一的ip,也就是代理服务器的IP。
最初是由一个俄罗斯人(Igor Sysoev:伊戈尔 塞索耶夫)开发的。Nginx的第一个版本发布于
2004年,因其系统资源消耗低、运行稳定,且具有高性能的并发处理能力等特性,Nginx在互联网
企业中得到广泛应用。Nginx是互联网上最受欢迎的开源Web服务器之一,Netcraft公司2019年7月
的统计数据表明,Nginx为全球最繁忙网站中的25.42%提供了服务或代理。得益于近几年云计算和
微服务的快速发展,Nginx因在其中发挥了自身优势而得到广泛应用,且有望在未来占有更多的市场
份额。
2019年3月,著名硬件负载均衡厂商F5宣布收购Nginx,Nginx成为F5的一部分。

2 NGINX安装

安装:yum

[root@localhost /]# yum install yum-utils

切换目录: [root@localhost /]# cd /etc/yum.repos.d/

创建文件: [root@localhost yum.repos.d]# touch nginx.repo

修改文件内容: [nginx-stable] name=nginx stable repo baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ gpgcheck=1 enabled=1 gpgkey=https://nginx.org/keys/nginx_signing.key module_hotfixes=true [nginx-mainline] name=nginx mainline repo baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/ gpgcheck=1 enabled=0 gpgkey=https://nginx.org/keys/nginx_signing.key module_hotfixes=true

Nginx的安装: [root@localhost yum.repos.d]# yum install nginx

安装完成:我们的版本:nginx.x86_64 1:1.20.2-1.el7.ngx

3 Nginx启动及验证

如果 curl localhost:80 不出现 welcome ,kill 掉进程重启一下

4 Nginx常用命令

查看nginx版本号:

关闭Nginx命令:

优雅地关闭:

启动Nginx命令:

优雅地启动:

重载配置命令:

备注:找到conf文件:

5 配置文件介绍

找到nginx配置文件:/etc/nginx/nginx.conf

配置文件由模块组成,模块由配置文件中的指令组成。

指令种类:

简单指令,块指令(带大括号的指令)。

上下文概念

整个nginx.conf是一个上下文,里边的指令是上下文的一个配置。某个块指令也可以称为一个上下文,块中的指令,是当前块的配置。

整体分类:

全局块:

就是最开始的简单指令。从配置文件开始到events

events块
http块

存放代理,缓存,日志,第三方模块的配置,分为Http全局块(针对http这个模块来说是全局的)和http server块

相关推荐
Mr. bigworth26 分钟前
Linux安装RabbitMQ
linux·运维·rabbitmq
乐维_lwops1 小时前
双因子认证:统一运维平台安全管理策略
运维·服务器·安全
叫我龙翔1 小时前
【项目日记】仿mudou的高并发服务器 --- 实现缓冲区模块,通用类型Any模块,套接字模块
linux·运维·服务器·网络·c++
不撸先疯。2 小时前
docker镜像源配置、换源、dockerhub国内镜像最新可用加速源(仓库)
运维·docker·容器·dockerhub
Stark-C2 小时前
功能齐全,支持协作 | Docker部署一款支持多人共享的私密浏览器『n.eko』
运维·docker·容器
嘟嘟Listing2 小时前
设置jenkins时区记录
运维·jenkins
嘟嘟Listing2 小时前
jenkins docker记录
java·运维·jenkins
伴野星辰2 小时前
小乌龟TortoiseGit 安装和语言包选择
linux·运维·服务器
枫叶丹43 小时前
【在Linux世界中追寻伟大的One Piece】多线程(一)
java·linux·运维
残念ing3 小时前
【Linux】—简单实现一个shell(myshell)
linux·运维·服务器