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

【Nginx】Nginx安装及简单使用

https://www.bilibili.com/video/BV1F5411J7vK
https://www.kuangstudy.com/bbs/1353634800149213186
https://stonecoding.net/system/nginx/nginx.html
https://blog.csdn.net/qq_40492693/article/details/124453090

Nginx 是一个高性能的 HTTP 和反向代理 Web 服务器。其特点是占有内存少,并发能力强,官方数据测试表明能够支持高达 50,000 个并发连接数的响应。Nginx 启动特别容易,并且几乎可以做到7*24不间断运行,即使运行数个月也不需要重新启动。还能够不间断服务的情况下进行软件版本的升级。

经常用于:
1、反向代理,将客户端的 HTTP 请求转发到后端服务器进行处理
2、负载均衡,将客户端的请求分配到多个后端服务器上进行处理
3、Web 服务器,处理静态文件

Nginx负载均衡

轮询
在这里插入图片描述
加权轮询
在这里插入图片描述

iphash对客户端请求的ip进行hash操作,然后根据hash结果将同一个客户端ip的请求分发给同一台服务器进行处理,可以解决session不共享的问题。(还是推荐使用redis做session共享)
在这里插入图片描述

Nginx动静分离

动静分离,在我们的软件开发中,有些请求是需要后台处理的,有些请求是不需要经过后台处理的(如:css、html、jpg、js等等文件),这些不需要经过后台处理的文件称为静态文件。让动态网站里的动态网页根据一定规则把不变的资源和经常变的资源区分开来,动静资源做好了拆分以后,我们就可以根据静态资源的特点将其做缓存操作。提高资源响应的速度。
在这里插入图片描述

windows下载

https://nginx.org/en/download.html
下载解压缩即可
在这里插入图片描述

cmd运行nginx.exe

nginx的配置文件是conf目录下的nginx.conf,默认配置的nginx监听的端口为80
在这里插入图片描述

当我们修改了nginx的配置文件nginx.conf 时,不需要关闭nginx后重新启动nginx,只需要执行命令 nginx -s reload 即可让改动生效

关闭nginx
如果使用cmd命令窗口启动nginx, 关闭cmd窗口是不能结束nginx进程的,可使用两种方法关闭nginx
(1)输入nginx命令 nginx -s stop(快速停止nginx) 或 nginx -s quit(完整有序的停止nginx)
(2)使用taskkill taskkill /f /t /im nginx.exe

linux尝试用yum安装

 yum -y install nginx

在这里插入图片描述

rm -f /var/run/yum.pid     
#删除进程pid

在这里插入图片描述
Nginx位于第三方的yum源里面,而不在CentOs官方yum源里面。

yum -y install epel-release
yum -y install nginx

在这里插入图片描述

直接下载一个epel源替代系统的软件源:

#配置yum源、epel源为国内镜像
cd /etc/yum.repos.d
#获取阿里centos7的base-repo
wget https://mirrors.aliyun.com/repo/epel-7.repo
 yum -y install nginxwhereis nginx

在这里插入图片描述

Nginx 会自动注册为服务,使用 systemctl 命令来进行管理。

systemctl start nginx
systemctl enable nginx
systemctl status nginx
systemctl reload nginx  #重载 Nginx 配置文件
systemctl stop nginx
systemctl restart nginx

还可以使用 nginx 命令进行管理
在这里插入图片描述
常用选项有:

  • -s signal:发送信号给主进程,包括:
    1、stop:发送 SIGTERM 信号,表示快速关闭 Nginx
    2、quit:发送 SIGQUIT 信号,表示优雅关闭 Nginx
    3、reopen:发送 SIGUSR1 信号,表示重新打开日志文件
    4、reload:发送 SIGHUP 信号,表示重载配置文件,使用新配置文件启动新的工作进程,优雅关闭老的工作进程

  • -t:测试配置文件是否正确

  • -c:指定配置文件,默认为 /etc/nginx/nginx.conf

在这里插入图片描述

Nginx具体应用

1.部署静态资源
Nginx可以作为静态web服务器来部署静态资源。静态资源 指在服务端真实存在并且能够直接展示的一些文件,比如常见的html文件、css文件、js文件、图片、视频等资源。
相对于Tomcat,Nginx处理静态资源的能力更加高效,所以在生产环境下,一般都会将静态资源部署到Nginx中。将静态资源部署到Nginx非常简单,只需要将文件复制到Nginx安装目录下的html目录中即可。

server {listen 80;					# 监听端口server_name localhost;		# 服务器名称location /{					# 匹配客户端请求urlroot html;				# 指定静态资源根目录index index.html;		# 指定默认首页}
}

2、反向代理
配置反向代理

server  {listen 82;server_name localhost;location /{proxy_pass http://192.168.81.129:8080;		#反向代理配置,将请求转发到指定服务}
}

3、负载均衡
早期的网站流量业务功能都比较简单,单台服务器就可以满足基本要求,但是随着互联网的发展,业务流量越来越大并且业务逻辑越来越复杂,单台服务器的性能及单点故障问题就凸显出来了,因此需要多台服务器组成应用集群,进行性能的水平扩展以及避免单点故障的出现。

应用集群:将同一应用部署到多台机器上,组成应用集群,接收负载均衡器分发的请求,进行业务处理并返回效应数据
负载均衡器:将用户请求根据对应的负载均衡算法分发到应用集群中的一台服务器进行处理

upstream targetserver{	# upstream指令可以定义一组服务器server 192.168.81.129:8080;server 192.168.81.129:8081;
}
server  { listen 80;server_name localhost;location /{proxy_pass http://targetserver;		#反向代理配置,将请求转发到指定服务}
}

负载均衡策略
在这里插入图片描述

在这里插入图片描述

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

相关文章:

  • 【Linux系列】find命令使用与用法详解
  • Apple - DNS Service Discovery Programming Guide
  • 如何高效地为pip换源:详细操作指南
  • 免费ddns工具,快解析DNS解析使用教程
  • 【Vite】控制打包结构
  • Debian Linux安装minikubekubectl
  • Discuz动漫二次元风格网站模板
  • RIP、OSPF、IS-IS学习
  • 移植案例与原理 - build lite源码分析 之 hb命令__main__.py
  • Leo赠书活动-26期 不同数据库背后的数据存储方案
  • 在Windows10中使用Vim
  • 【Python机器学习实战】 | 基于PCA主成分分析技术读入空气质量监测数据进行数据预处理并计算空气质量综合评测结果
  • 学习java第一百零八天
  • Linux通配符总结
  • ffmpeg的安装教程
  • 禅道身份认证绕过漏洞(QVD-2024-15263)复现
  • 深入分析 Android BroadcastReceiver (六)
  • mysql 查询的一般思路
  • 【Web APIs】DOM 文档对象模型 ⑤ ( 获取特殊元素 | 获取 html 元素 | 获取 body 元素 )
  • Android11 以Window的视角来看FallbackHome的启动
  • 9 RestClient客户端操作文档
  • 『Z-Weekly Feed 08』加密资产观 | FHE应用前景 | OPAL协议
  • 酒店预定系统
  • Redis的实战常用一、验证码登录(解决session共享问题)(思路、意识)
  • 基于Spring Boot的智能分析平台
  • HTML(13)——显示模式
  • 【Spring】Spring Boot 快速入门
  • Go自定义数据的序列化流程
  • 贪心算法练习题(2024/6/18)
  • 4.1 四个子空间的正交性