欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

Nginx 代理 | 学习笔记

最编程 2024-07-16 10:19:50
...

开发者学堂课程【HTTP 代理系统第三课时:Nginx 代理】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/803/detail/13874


Nginx 代理

 

内容简介

一. Nginx 的使用

二. Nginx 配置反向代理

三. Nginx 性能优化

 

一.Nginx 的使用

1.1打开系统操作

  1.1.1首先使用Curl 输入localhost ,此时没有启动Nginx。无法访问端口。

网络异常,图片无法展示
|

  1.1.2此时可以使用systemctl status nginx

网络异常,图片无法展示
|
  1.1.3此时启动nginx 进程进行启动

网络异常,图片无法展示
|

  1.1.4 此时重新访问localhost

网络异常,图片无法展示
|

  1.1.5添加参数,成功启动Nginx

网络异常,图片无法展示
|

 1.2Nginx 的简单操作

   1.2.1Nginx-h 帮助查看信息

网络异常,图片无法展示
|

   1.2.2Nginx-t 检测配置文件是否可用

网络异常,图片无法展示
|

  1.2.3Nginx-s reload 重新加载配置文件

例:文件出错可先试用Nginx-t 检测,之后进行试用Nginx-s reload 重新启动。此方法可用确保每次加载信息都是正常可行的。

网络异常,图片无法展示
|

例:如试用systemectl restart nginx ,则会显示报错。

网络异常,图片无法展示
|

   1.2.4因此在使用之前要修改配置,重新试用Nginx-t检测,之后进行试用Nginx-s reload 重新启动,确保配置文件准确无误。

 

网络异常,图片无法展示
|

网络异常,图片无法展示
|

网络异常,图片无法展示
|
  1.2.5Nginx-v 查看当前版本

 

网络异常,图片无法展示
|

  1.2.6Nginx-V 查看配置文件的构建参数。

网络异常,图片无法展示
|


二. Nginx 配置代理

2.1 Nginx 配置正向定理

网络异常,图片无法展示
|

2.2 Nginx 配置反向代理

与正向代理不同的是在location 中使用了proxy-pass 传递了一个地址,是指所有请求代理地址进行请求。

 

网络异常,图片无法展示
|

 

三.Nginx 性能优化

3.1 IPv4系统内核参数修改

可以通过修改/etc/systclconf 来更新内核参数,并通过systcl-p 来应用修改参数

 

net.corenet_dev_max_backlog:表示每个网络接口接受数据包的速率比内核处理包的速率快时,允许发送到队列的数据包的最大数目。可以通过调整大小,使队列中有更多的数据。

 

netcore.somaxconn:表示系统同时发起的TCP链接数,可以提升该值,获得更高的并发阈值。

 

netipv4.tcpmaxorphans:表示系统最多允许存在多少TCPSocket 不关联到handler 上。超过这个数字的请求会被复位。

netipv4tcpmaxsynbacklog:表示尚未收到客户端确认信息的连接请求最大值,内存越大,这个值可以修改的越大。

3.2 CPU 参数修改

Nginx 中有两个和内核调度有关的指令,可以提升Nginx 的并行处理能力

 

worker_process:该指令可以设置Nginx 的进程数,可以根据CPU 的核心数来设置,设置为CPU核心数或核心数的倍数。

 

workder_cpu_affnity:该指令可以为不同的woker_process 分配CPU.

举例:当把woker_process 值设为4时,workder_cpu_affnity 4位的2进制数。依次分配位置。

19.png

举例:当把woker_process 值设为6时,workder_cpu_affnity 6位的2进制数。依次分配位置

20.png

21.png

3.3 网络参数修改

keepalivetimeout 设置了Nginx 与客户端保持连接的超时时间,超过了这个时间,服务器会关闭连接。

 

send_timeout:设置Nginx 相应客户端的超时时间,如果客户端在这个时间内没有响应,就会关闭连接。

 

client_header_buffer_size:设置了客户端请求头缓冲区大小,默认为1Kb。如果Cookie过大,超出缓冲区大小,就会报错。

 

multi_accept设定Nginx 是否尽可能多的接受客户端的请求。

 

举例:如何配置修改Nginx 参数

第一步:修改参数。

sysctl.conf下进行修改

22.png

第二步:应用修改

执行systcl-p

  23.png

24.png

第三步:查看Nginx的配置

Nginx.conf当中查看配置信息

27.png

第四步:检测是否正常运行

输入Nginx-t进行检测

25.png

再输入Nginx-s reload检测

26.png

如果显示错误,再次进行输入systemctl statsu nginx,确定是否启动成功。

28.png

输入Systemectl start nginx  启动

29.png

第五步:配置虚拟主机与反向代理

把配置文件放在Conf.d目录中

30.png

 配置正向代理。

31.png

配置反向代理

 

上一篇: Nginx 配置 WebSocket [支持 wss 和 ws 连接

下一篇: nginx前向代理 - 支持互联网访问