nginx正向代理、反向代理、负载均衡

nginx.conf nginx首要处理静态页面 反向代理 动态请求

全局模块 work processes 1; 设置成服务器内核数的两倍(一般不不超过8个超过8个反而会降低性能一般4个 1-2个也可以)

netstat -antp | grep 80 查端口号

*1、events块:*

配置影响nginx服务器与用户的网络连接

一般设置并发15000-20000个

处理进程的过程必然涉及配置文件和展示页面 也就是涉及打开文件的数量

linux默认打开的文件数就是1024

vim /etc/security/limits.conf (最大文件数) vim nginx.conf

*soft nproc 65535 最大进程数的软限制

*hard nproc 66635 最大进程数的硬限制

*soft nofile 65535最大打开文件数的软限制

*hard nofile 65535 最大打开文件数的硬限制

http

在这里插入图片描述

在这里插入图片描述

默认不支持jsp.js.php

在这里插入图片描述

默认的日志格式记录了access.log 访问日志的格式,error.log也是一样的格式

在这里插入图片描述

存放路径

在这里插入图片描述

属于http
在这里插入图片描述

location网页匹配的工作目录的地址和支持打开页面的文件类型

在这里插入图片描述

tail -f /usr/local/nginx/logs/error.log
在这里插入图片描述

root和alias之间匹配区别

*root指定访问页面的根目录是拼接*

*alias指定的是完整目录绝对路径*

root的匹配模式 拼接

root的工作目录,访问的uri /xy102

location /xy102

/opt/test1/

/opt/test1/xy102/

alias匹配nginx的工作目录,路径是绝对路径

location /xy102

alias /opt/test1/xy102/;

alias 只能写在http模块当中的sever模块的location模块里面

root可以写server模块也可以在http 也可以在locatiion

alias匹配工作目录不能够使用重定向功能

全局模块

work_processes 1;指定进程数

envents模块决定了能够处理的来年结束

stream 四层代理模块

http模块】转发和处理http请求设置代理(正向代理,反向代理),缓存,定义日志格式,重定向配置)

在http模块中包含

sever块http里面可以有多个server模块

在server模块当中包含:

location模块

在server当中可以又多个location

统计访问状态

在这里插入图片描述

active connections 当前活动的连接数

server accepts handled reouests 表示已经处理的连接数

三个数字 从左往右 已经处理的连接数 成功的建立连接的次数 已经处理的请求数

Reading:0 Writing: 1 Waiting :0

reading 表示服务端正在从客户端读取请求的数据

writing 表示服务端正在把响应数据发送给客户端

waitting 表示有链接处于空闲时刻 等待请求

基于密码授权进行访问控制

yum -y install httpd-tools #httppasswd的工具 ,要先安装

htpasswd -c /usr/local/nginx/passwd.db zj
chown nginx passwd.db
chmod 400 passwd.db #权限只能是400

在这里插入图片描述

基于客户端的访问控制 IP地址来进行控制
在这里插入图片描述

403 forbidden 0/24整个网段

在这里插入图片描述

基于域名的nginx主机
在这里插入图片描述

mkdir -p /var/www/html/xy102

在这里插入图片描述

基于ip地址的虚拟主机

在这里插入图片描述

多个网卡

多个配置文件**

******nginx优化与防盗链

1.隐藏版本号

./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module

server_tokens off; 关闭版本号

设置页面的缓存时间 主要针对动态页面,图片的缓存

html默认工作目录

修改用户与组

#设置图片的缓存时间

expires 1d; 一天

2.日志分割**+日志清理****

nginx没有自带的日志分割功能,靠我们运维人员通过脚本实现日志分割。

apache是 自带日志分割的按天来进行收集日志

#获取日期 d=$(date +%Y-%m-%d)

access.log

error-2024.07-03.log

nginx没有自动分割的功能,脚本来实现日志分割

#日志清理 日志清理原则:业务日志一般保留30天。数据库日志,保留2年。用户信息加密,而且要永久保存。高可用。

date-d "-1 day" "+%Y%m%d" 分割前一天的

在这里插入图片描述

更改进程数设置cpu绑定

worker_connections 一般15000-20000

两个相乘就是最大并发数

*别忘了修改limits.conf。否则不生效。*

3.连接超时 配置页面压缩

在这里插入图片描述

gzip_types text/plain text/javascript application/x-javascript text/css text/xml application/xml application/xml+rss image/jpg image/jpeg image/png image/gif application/x-httpd-php application/javascript application/json;
支持压缩的类型

回收TIME_WAIT:

time_wait是tcp链接当中的一种状态出现在四次挥手之后

处于等待状态 双方不再发送数据

time_wait所占用的系统资源很小,数量比较少,完全可以忽略不计

但是太多了就有一定的影响

连接断开(四次挥手)之后,尽快的把time_wait状态的连接进行回收

统计当前系统的连接状态

vim /etc/sysctl.conf

net.ipve.tcp_syncookies=1

防止tcp的半连接队列溢出 可以达到服务端在接收到tcp的syn(同步)的请求时能够快速响应

net.ipv4.tcp_tw_reuse=1

允许复用time_wait状态的连接 新的连接可以直接使用time_wait状态的端口 可以提高连接的重用率

net.ipv4.tcp_tw_recycle=1 (新版本已被淘汰)

这个是老版本的配置 时间戳戳记也可以进行来连接复用

net.ipv4.tcp_fin_timeout=30

控制time_wait状态的时间 持续30秒 不是立即把time_wait连接收回 而是尽可能的把time_wait状态进行回收

nginx优化(重要)

隐藏版本号

日志分割

cpu绑定

连接超时

页面压缩

页面缓存时间

time_wait状态的回收

防盗链

vim nginx.conf

lnmp+DISCUZ

论坛的一个服务

l linux 操作系统

n nginx 前端页面的web服务

mysql 数据库 保存用户和密码 以及论坛的相关内容

php 动态强求转发的中间件

态进行回收

nginx优化(重要)

隐藏版本号

日志分割

cpu绑定

连接超时

页面压缩

页面缓存时间

time_wait状态的回收

防盗链

vim nginx.conf

[外链图片转存中…(img-Ey3svsBO-1720579650496)]

lnmp+DISCUZ

论坛的一个服务

l linux 操作系统

n nginx 前端页面的web服务

mysql 数据库 保存用户和密码 以及论坛的相关内容

php 动态强求转发的中间件

在这里插入图片描述

my.cnf是mysql的主配置文件

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/870134.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

qt list 控件

Qt中的列表控件主要包括QListView和QListWidget。以下是对这两个控件的详细介绍: 一、QListView控件 创建:在Qt Designer中,可以通过拖拽的方式创建一个ListView控件。在代码中,可以使用QListView *listView new QListView(thi…

aws sap认证考试如何轻松通过

如何高效备考AWS SAP (Solutions Architect Professional) 认证? AWS SAP认证是AWS认证体系中难度最高的认证之一,要通过这个考试确实需要下一番功夫。但通过合理规划和有效准备,你可以提高通过的几率。以下是一些建议: 评估起点 首先诚实地评估自己的AWS知识水平和实践经验。…

气膜滑冰馆:滑冰爱好者的最佳选择—轻空间

滑冰运动在全球范围内越来越受欢迎,然而,传统滑冰馆在建设和运营过程中往往面临高能耗和环境控制难题。幸运的是,采用气膜结构作为建筑外壳的气膜滑冰馆,正在为滑冰爱好者提供一种全新的、节能的解决方案。 1. 气膜结构&#xff1…

Spring MVC -01

Spring 的 MVC 框架 Spring的MVC框架是Spring框架的一部分,它提供了用于开发Web应用程序的一组组件和设计模式。MVC是Model-View-Controller的缩写,是一种设计模式,用于将应用程序的逻辑与用户界面分离。 在Spring的MVC框架中,Mo…

独立站点:自主经营,不受平台限制的网站类型

独立站点,因自主运作且无需依附其他平台而得名,其内涵即为具备自有域名、自属服务器及内容的个体。相较于依赖第三方平台,独立站点能按自身需求进行经营,无任何限制。 然而,独立站并非涵盖所有网站类型。日常网络浏览…

MES 功能模块

MES系统(Manufacturing Execution System,生产执行系统)是制造业企业的关键管理系统之一,它通过集成生产计划、工艺流程、物料管理和生产过程数据等,实现了对生产和制造过程的全面管理和监控。MES系统的功能模块主要包…

小额贷记业务全解析与功能测试策略

一、小额贷记业务概述 小额贷记业务是小额支付系统的重要组成部分,它主要处理金额在规定起点以下的小额贷记支付业务。这种业务通常面向个人或小微企业,提供便捷、快速的资金划转服务。小额贷记业务的特点在于其金额较小、操作简便、处理速度快&#xff…

【线性表,线性表中的顺序表和链表】

目录 1、线性表的定义和基本操作1.1、线性表的定义1.2、线性表的基本操作 2、顺序表和链表的比较2.1、顺序表2.1.1、顺序表的定义和特点2.1.2、顺序表的实现(1)顺序表的静态分配:(2)顺序表的动态分配 2.1.3、顺序表的基…

昇思25天学习打卡营第17天|基于MobileNetv2的垃圾分类

今天学习的内容是利用视觉图像技术,来实现垃圾分类代码开发的方法。通过读取本地图像数据作为输入,对图像中的垃圾物体进行检测,并且将检测结果图片保存到文件中。 本章节主要包括8部分内容: 1、实验目的 1、了解熟悉垃圾分类应用…

气膜滑雪馆如何实现恒温—轻空间

随着滑雪运动的普及和爱好者数量的增加,滑雪馆的建设需求也不断提升。然而,如何在滑雪馆内保持恒温,提供一个稳定舒适的滑雪环境,成为了建设过程中需要解决的关键问题。气膜滑雪馆凭借其独特的结构和技术优势,成功地实…

MQTT是什么,物联网

写文思路: 以下从几个方面介绍MQTT,包括:MQTT是什么,MQTT和webSocket的结合,以及使用场景, 一、MQTT是什么 MQTT(Message Queuing Telemetry Transport)是一种轻量级的发布/订阅消息…

如何分辨AI生成的内容?AI生成内容检测工具对比实验

检测人工智能生成的文本对各个领域的组织都提出了挑战,包括学术界和新闻界等。生成式AI与大语言模型根据短描述来进行内容生成的能力,产生了一个问题:这篇文章/内容/作业/图像到底是由人类创作的,还是AI创作的?虽然 LL…

Autogen和LangGraph对比

AutoGen和LangGraph是两种用于构建多代理AI系统的框架,它们各有特点和优势。以下是对这两个框架的详细对比: 共同点 都支持创建多个AI代理进行协作都可以与大语言模型(LLM)集成都允许定义代理之间的交互流程都支持使用工具和外部资源来增强代理能力 AutoGen的特点 灵活的代…

通过.NET6 创建的ASP.NET Core webapi项目中没有 Startup 类和ConfigureServices 方法

Startup.cs 作用就是,对项目中用到的 静态文件,管道,服务,日志,路由,数据库连接,过滤器的注册 等 所有的有关程序的启动运行中用到的 没有startup.cs可以手动新建一个Startup.cs类&#xff…

LabVIEW实现LED显示屏视觉检测

为了满足LED显示屏在生产过程中的严格质量检测需求,引入自动化检测系统是十分必要的。传统人工检测方式存在检测强度高、效率低、准确性差等问题,自动化检测系统则能显著提高检测效率和准确性。视觉检测系统的构建主要包含硬件和软件两个部分。 视觉系统…

昇思25天学习打卡营第23天 | Pix2Pix实现图像转换

内容介绍: Pix2Pix是基于条件生成对抗网络(cGAN, Condition Generative Adversarial Networks )实现的一种深度学习图像转换模型,该模型是由Phillip Isola等作者在2017年CVPR上提出的,可以实现语义/标签到真实图片、灰…

Python酷库之旅-第三方库Pandas(016)

目录 一、用法精讲 39、pandas.DataFrame.to_stata函数 39-1、语法 39-2、参数 39-3、功能 39-4、返回值 39-5、说明 39-6、用法 39-6-1、数据准备 39-6-2、代码示例 39-6-3、结果输出 40、pandas.read_stata函数 40-1、语法 40-2、参数 40-3、功能 40-4、返回…

C++ //练习 14.51 在调用calc的过程中,可能用到哪些类型转换序列呢?说明最佳可行函数是如何被选出来的。

C Primer(第5版) 练习 14.51 练习 14.51 在调用calc的过程中,可能用到哪些类型转换序列呢?说明最佳可行函数是如何被选出来的。 void calc(int); void calc(LongDouble); double dval; calc(dval); //哪个calc?环境…

nssm的下载和使用

nssm(Non-Sucking Service Manager)是一个用于在Windows系统上管理服务的工具。它允许你将.exe文件和.bat文件转换为Windows服务,并提供了一些功能来管理这些服务。 下载和安装 首先,你需要从nssm官方网站(https://n…

【ARM】MDK安装ARM_compiler5无法打开安装程序

【更多软件使用问题请点击亿道电子官方网站】 1、 文档目标 在客户安装了最新版本的MDK5.37及后续更新版本,但原工程使用ARM_Compiler_5.06进行编译和调试,需安装ARM_Compiler_5.06的编译器版本,但在解压缩的过程中后续无法打开ARM_Compiler…