当前位置: 首页 > news >正文

复习Nginx

1.关于Nginx

Nginx的关键特性

1.支持高并发
2.内存资源消耗低
3.高扩展性(模块化设计)
4.高可用性(master-worker)

Nginx运行架构

在这里插入图片描述
注意
默认情况下,Nginx会创建和服务器cpu核心数量相等的worker进程
worker进程之间相互独立,其中一个故障不会影响其他进程

Nginx关键工作机制

在这里插入图片描述

模块化

在这里插入图片描述

反向代理

在这里插入图片描述

负载均衡功能

在这里插入图片描述

安装Nginx

[root@localhost ~]# yum insatll nginx -y

在这里插入图片描述
当然你也可以选择编译安装
在这里插入图片描述

常见的Nginx命令

在这里插入图片描述
注意
重启与重新加载的区别

1.
重启(Restart)Nginx:
当你执行重启操作时,Nginx会先停止当前正在运行的进程,然后重新启动一个新的进程。
重启会导致所有当前的连接被关闭,正在处理的请求可能会中断。
重启操作通常用于应用新的配置文件或者进行系统升级。
重启会消耗更多资源,因为它涉及到关闭旧进程和启动新进程的过程。
2.
重新加载(Reload)Nginx:
重新加载操作允许Nginx在不中断当前服务的情况下重新读取配置文件。
当执行重新加载命令时,Nginx会启动一个新的主进程,然后让旧的主进程优雅地关闭,同时新的主进程接管旧进程的工作。
重新加载不会中断现有的连接和正在处理的请求,因此对用户的影响最小。
重新加载操作通常用于更新配置文件而不影响当前服务。

相关服务文件

在这里插入图片描述

Nginx服务主配置文件

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

配置文件详解

在这里插入图片描述
在这里插入图片描述

实验1

安装好后启动查看进程
在这里插入图片描述
测试:在浏览器中输入nginx服务器ip地址
注意关防火墙
在这里插入图片描述
1.网站静态资源访问
需求:通过域名 www.test.com,可访问到 nginx 服务中指定的主页页面,同时可访问到指定的图片文件及 txt 文档。
首先创建静态资源访问

mkdir -p /data/Nginx

在这里插入图片描述
在 Nginx 中创建主页文件 index.html,并输入内容“hello,openEuler”,具体如下:
在这里插入图片描述
在 Nginx 目录中创建文件 test.txt,并输入内容“hello,Nginx”,具体如下:
在这里插入图片描述
找个图片放到该目录下
在这里插入图片描述
在/etc/nginx/conf.d 目录中创建关于新静态网站的配置文件 static.conf,并配置以下内容:
在这里插入图片描述
检查一下
在这里插入图片描述
正确后重新加载服务–nginx -s reload
浏览器访问
在这里插入图片描述
查看文本
在这里插入图片描述
查看图片
在这里插入图片描述

实验2:虚拟主机配置

基于不同ip,不同端口,不同地址访问
在这里插入图片描述
在这里插入图片描述

1.基于IP
添加两个ip
在这里插入图片描述
在这里插入图片描述
在/etc/nginx/conf.d/下创建一个以conf结尾的文件

server{listen 172.25.250.139:80;server_name localhost;location /{root /data/nginx1;index index.html;}
}
server{listen 172.25.250.140:80;server_name localhost;location /{root /data/nginx2;index index.html;}
}
server{listen 172.25.250.141:80;server_name localhost;location /{root /data/nginx3;index index.html;}
}

在这里插入图片描述
2.基于不同端口
我们先加个IP
在这里插入图片描述
准备工作

[root@localhost data]# mkdir 8{1,2,3}
[root@localhost data]# ll
total 24
drwxr-xr-x 2 root root 4096 Aug  1 10:26 81
drwxr-xr-x 2 root root 4096 Aug  1 10:26 82
drwxr-xr-x 2 root root 4096 Aug  1 10:26 83
drwxr-xr-x 2 root root 4096 Aug  1 10:09 nginx1
drwxr-xr-x 2 root root 4096 Aug  1 10:09 nginx2
drwxr-xr-x 2 root root 4096 Aug  1 10:09 nginx3[root@localhost data]# echo "81" > /data/81/index.html
[root@localhost data]# echo "82" > /data/82/index.html
[root@localhost data]# echo "83" > /data/83/index.html

配置文件

server{listen 172.25.250.142:81;server_name localhost;location /{root /data/81;index index.html;}      
}         
server{  listen 172.25.250.142:82;server_name localhost;location /{root /data/82;index index.html;} 
}   
server{listen 172.25.250.142:83;server_name localhost; location /{root /data/83;index index.html;}
}

在这里插入图片描述
基于不同地址
在这里插入图片描述

server{listen 172.25.250.139:80;server_name www.hehe.com;location /{root /data/hehe;index index.html;}       
}        
server{   listen 172.25.250.139:80;server_name www.haha.com;location /{ root /data/haha;index index.html; }
}
server{listen 172.25.250.139:80;server_name www.xixi.com;location /{root /data/xixi;index index.html;} 
}

修改本地hosts
就可以访问

3.访问控制

顺序很重要,最严格的规则放在前面
1.基于ip

指令
allow 允许
deny 拒绝

我们先创建五个主机
在这里插入图片描述

主机名IP
node1172.25.250.139/24
node2172.25.250.140/24
node3172.25.250.142/24
node4172.25.250.141/24
node5172.25.250.143/24

我们拒绝node2访问

配置文件

server{listen 80;server_name locahost;location /{root /data/nginx;index index.html;deny 172.25.250.140;allow 172.25.250.0/24;deny all;}
}

我们可以得到
node2
在这里插入图片描述
其他
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 注意!!!!顺序 :从上至下逐条匹配,一旦匹配后面就不管了

2.基于http的基本认证

auth_basic
auth_basic_user_file

编写规则

server{listen 80;server_name locahost;location /{root /data/nginx;index index.html;auth_basic "my site";auth_basic_user_file /data/nginx/.userpwd;}
}

下载httpd-tools
在这里插入图片描述
重启测试
在这里插入图片描述
输入密码后,正常访问
在这里插入图片描述
负载均衡留到后面,集群复习

http://www.lryc.cn/news/411651.html

相关文章:

  • nvm:Node.js 版本管理工具
  • springboot校园商店配送系统-计算机毕业设计源码68448
  • 【Redis 初阶】客户端(C++ 使用样例列表)
  • 【STM32】STM32单片机入门
  • 学生信息管理系统(Python+PySimpleGUI+MySQL)
  • Java8.0标准之重要特性及用法实例(十九)
  • Linux系统中,`buffer`和`cache` 区别
  • python创建进度条的两个手搓方法
  • JAVA—面向对象编程基础
  • 【计算机视觉学习之CV2图像操作实战:车道识别1】
  • 动态之美:Laravel动态路由参数的实现艺术
  • Python练手小项目
  • 苹果手机通讯录恢复教程?3招速成指南
  • python爬虫入门(五)之Re解析
  • 可靠的图纸加密软件,七款图纸加密软件推荐
  • 【每日一题】【最短路】【BFS】小红走矩阵 “葡萄城杯”牛客周赛 Round 53 F题 C++
  • 无线磁吸充电宝哪个牌子值得入手?什么牌子磁吸充电宝性价比高?
  • 互联网摸鱼日报(2024-08-01)
  • Alpla003经典的价量背离的因子在可转债列表里的因子分析(附python代码)
  • 进阶理解——typeof 、instanceof
  • 不同类型的生物反应器在支架成熟过程中具有哪些特点和应用?
  • 8. Spring Ai之入门到精通(超级详细)
  • 寄存器和硬件的关系
  • 【WEB】ctfshow-萌新-web9-15
  • 【Vulnhub靶场AI-WEB-1.0打靶教程】
  • html实现酷炫美观的可视化大屏(十种风格示例,附源码)
  • 【C++BFS算法 二分查找】2812. 找出最安全路径
  • 轻触开关 KH-4.5X4.5X5.5H-STM
  • 3.redis客户端
  • Rust配置国内源,解决安装依赖慢问题