这节主要简述什么是nginx,以及nginx的安装
目录
一、Nginx简介
1.1 描述
1.2 下载安装
二、Nginx基本目录结构及其相关功能
2.1 Nginx重要的组成结构
2.2 nginx.conf 文件结构介绍
一、Nginx简介
1.1 描述
(摘抄自百度百科 20220416)
Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,公开版本1.19.6发布于2020年12月15日。 [12]
其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、简单的配置文件和低系统资源的消耗而闻名。2022年01月25日,nginx 1.21.6发布。 [13]
Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好。
释义:
1. nginx 就是一个web服务器, 如何理解? 仅仅从其名字上可以类比Apache(tomcat),nginx提供的服务监听端口后,配置外网ip策略、内部防火墙等等便可以进行一个对外提供访问的服务器。
2. 轻量型: IO多路复用epoll,不像Apache 一个请求一个线程或进程,而且并发量因为epoll的介入,tomcat单台可以处理两百多个请求,nginx单台处理五万多个请求。
2. 提供代理和反向代理:目前场景经常使用nginx做转发操作。
1.2 下载安装
第一步: 环境准备:
#centOs
yum -y install make zlib-devel gcc-c++ libtool openssl openssl-devel
#ubuntu
sudo apt-get install gcc
sudo apt-get install g++
sudo apt-get install libtool
sudo apt-get install openssl
sudo apt-get install libssl-dev
sudo apt-get install libpcre3
sudo apt-get install zlib1g-dev
sudo apt-get install libpcre3-dev
第二步:下载nginx安装包
weget这个地址之后
第三步:解压编译
#1. 解压
tar -zxvf xxxxxxx.tar.gz
#2. 进入到解压后的文件夹,找到configure 文件
cd xxxxxxxxx
#3. 配置
./configure
#4. 编译
make && make install
第四步:启动
#找到sbin文件夹,运行下面命令启动,一般都会自动安装在 /usr/local/nginx 目录下
/usr/local/nginx/sbin/nginx
#指定配置文件
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
二、Nginx基本目录结构及其相关功能
2.1 Nginx重要的组成结构
1. sbin 文件夹: 主要是sbin里面的nginx二进制文件,主要是用于nginx的命令操作
nginx -t 检查配置文件
nginx -c filePath 指定conf配置文件
nginx -s [signal]
# stop--快速关闭,相当于TERM/INT 信号
nginx -s stop
# quit--优雅的关闭,类似于信号QUIT
nginx -s quit
# reopen -- 重写打开日志文件 相当于信号 USR1
nginx -s reopen
# reload -- 重新加载,相当于信号 HUP
nginx -s reload
2. conf目录,主要存放nginx.conf 配置文件
3. logs目录, access.log 文件(主要存储用户请求相关信息) ,
error.log 存储错误请求相关日志
4. html目录:存储欢迎页面的html,我们可以吧不同错误的静态文件放进去进行访问
2.2 nginx.conf 文件结构介绍
1. 第一个红框框是全局配置位置
2. events 模块,主要处理nginx连接,例如默认的 keepalive_timeout 单位为秒,主要记录的是连接时长,tcp连接无状态,且每次连接都需要三次握手,四次挥手,那么我们对于同一个用户可以不急着断开,处理多次, 最长1024s断开。
3. http模块,主要是用于nginx请求相关具体内容。