nginx必会知识点

以下内容输出来源:拉勾教育-Java高薪训练营

nginx必知必会

  • 一、介绍
    • 1、nginx的三个主要应用场景
    • 2、主要优点
    • 3、nginx4大模块
  • 二、下载安装
  • 三、nginx核心配置文件解读
  • 四、Nginx配置语法
  • 五、location路径配置
    • 1、规则
    • 2、静态资源web服务示例

一、介绍

nginx是一个轻量级http服务器和反向代理服务器,它通过优化web服务器软件来支持大规模客户端连接的并发处理,基于C语言编写,大量采用多路复用,事件通知,所以效率非常之高。

Nginx的第一个版本发布之后,一般被用来同Apache/Tomcat一同部署,html/css/jss和图片等静态内容由nginx处理,来降低Apache应用服务器的并发和延时。

1、nginx的三个主要应用场景

  • 静态资源服务(通过本地文件系统提供服务)
  • 反向代理服务(缓存+负载均衡)
  • API服务(OpenResty+Lua)

2、主要优点

随着并发连接数的上升,tomcat/apache等服务器的rts会急剧的衰减,而nginx可以保证如下特点:

  • 高并发高性能
  • 可扩展性好
  • 高可靠性(持续数年不宕机)
  • 热部署(在不停用的基础上升级nginx)

3、nginx4大模块

  • nginx二进制文件
  • nginx.conf(控制nginx的行为)
  • access.log(记录每一条http请求信息)
  • error.log(定位问题)

二、下载安装

1、下载安装包

www.nginx.org/download
wget http://nginx.org/download/nginx-1.18.0.tar.gz

2、使用nginx的必备软件

yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel

3、执行命令安装

./configure
make && make install

默认安装在/usr/local/nginx下,如果想指定安装目录, 可以通过来指定

./configure  --prefix=your_target_path

4、此时已安装完成,默认目录/usr/local/nginx
启动脚本在sbin目录下

./nginx //启动服务
./nginx -s quit //优雅停止服务
./nginx -s stop|reload|quit| //常用命令,-s是指signal

​​

5、访问测试 curl localhost:80
6、高亮命令
contrib文件夹包含vim命令,打开conf/nginx.conf文件,可以看到有些命令默认黑色,执行以下命令可以高亮关键字

cp -r contrib/vim/*  /usr/share/vim/vimfiles/

三、nginx核心配置文件解读

nginx.conf包括三块内容:全局块、events块、http块

1)全局块从配置文件开始到events之间的内容,配置worker进程的数量、错误日志的位置等,影响nginx服务器整体的运行;

2)events块主要影响nginx服务器与用户的网络连接,如work_connnections(单个worker进程的最大并发连接数)

3)http块,是配置修改最频繁的部分,包括虚拟主机的配置、监听端口的配置,请求转发、反向代理、负载均衡等,都在这里。

四、Nginx配置语法

  • 配置文件由指令和指令快组成
  • 每条指令以;结尾,指令与参数间用空格分隔
  • include语句允许组合多个配置文件,以提升可维护性
  • #添加注释
  • $表示变量

1、时间单位

ms 毫秒 s
m 分钟 h 小时
d w
M y

2、空间单位

bytes k/K 千字节
m/M g/G

3、常用http配置的指令快

  • upstream
  • http
    • server
    • location
      • alias
      • autoindex
      • proxy_pass
      • proxy_cache 缓存

五、location路径配置

1、规则

//在nginx配置文件中,location主要有这几种形式:
1)正则匹配 location ~ /api { }
2)不区分大小写的正则匹配 location ~* /api { }
3)匹配路径的前缀 location ^~ /api { }  //较为常用
4)精确匹配 location = /api { }
5)普通路径前缀匹配 location /api { }

//以上优先级
4 > 3 > 2 > 1 > 5

2、静态资源web服务示例

location / {
	#root与alias,更推荐使用后者
	alias staticData;
	#查看静态资源目录
	autoindex on;
}




本文地址:https://blog.csdn.net/chang_li/article/details/109644395

(0)
上一篇 2022年3月21日
下一篇 2022年3月21日

相关推荐