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

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的主配置文件

相关文章:

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

nginx.conf nginx首要处理静态页面 反向代理 动态请求 全局模块 work processes 1; 设置成服务器内核数的两倍(一般不不超过8个超过8个反而会降低性能一般4个 1-2个也可以) netstat -antp | grep 80 查端口号 *1、events块:* 配置影响ngi…...

matlab 有倾斜的椭圆函数图像绘制

matlab 有倾斜的椭圆函数图像绘制 有倾斜的椭圆函数图像绘制xy交叉项引入斜线负向斜线成分正向斜线成分 x^2 y^2 xy 1 (负向)绘制结果 x^2 y^2 - xy 1 (正向)绘制结果 有倾斜的椭圆函数图像绘制 为了确定椭圆的长轴和短轴的…...

PTK是如何加密WLAN单播数据帧的?

1. References WLAN 4-Way Handshake如何生成PTK?-CSDN博客 2. 概述 在Wi-Fi网络中,单播、组播和广播帧的加密算法是由AP决定的。其中单播帧的加密使用PTK密钥,其PTK的密钥结构如下图所示: PTK的组成如上图所示,由K…...

Django之登录权限系统

本文参考链接django之auth模块(用户认证) - chchcharlie、 - 博客园 (cnblogs.com) 执行完迁移命令,会自动生成admin表,迁移命令如下: python manage.py makemigrations python manage.py migrate 相关模块 from django.contrib …...

rust way step 1

install rust CARGO_HOME D:\rust\.cargo RUSTUP_HOME D:\rust\.rustup [dependencies] ferris-says "0.2" vscode 安装rust 插件 use ferris_says::say; // from the previous step use std::io::{stdout, BufWriter};fn main() {let stdout stdout();let m…...

视觉语言模型导论:这篇论文能成为你进军VLM的第一步

近些年,语言建模领域进展非凡。Llama 或 ChatGPT 等许多大型语言模型(LLM)有能力解决多种不同的任务,它们也正在成为越来越常用的工具。 这些模型之前基本都局限于文本输入,但现在也正在具备处理视觉输入的能力。如果…...

Postman工具基本使用

一、安装及基本使用 安装及基本使用参见外网文档:全网最全的 postman 工具使用教程_postman使用-CSDN博客 建议版本:11以下,比如10.x.x版本。11版本以后貌似是必须登录使用 二、禁止更新 彻底禁止postman更新 - 简书 host增加&#xff1…...

uni-app三部曲之三: 路由拦截

1.引言 路由拦截,个人理解就是在页面跳转的时候,增加一级拦截器,实现一些自定义的功能,其中最重要的就是判断跳转的页面是否需要登录后查看,如果需要登录后查看且此时系统并未登录,就需要跳转到登录页&…...

专注于国产FPGA芯片研发的异格技术Pre-A+轮融资,博将控股再次投资

近日,苏州异格技术有限公司(以下简称“异格技术”)宣布成功完成数亿元的Pre-A轮融资,由博将控股在参与Pre-A轮投资后,持续投资。这标志着继2022年获得经纬中国、红点中国、红杉中国等机构数亿元天使轮融资后&#xff0…...

【python】QWidget父子关系,控件显示优先级原理剖析与应用实战演练

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,…...

CTF php RCE(三)

0x07 日志文件包含 判断类型 使用kali curl -I urlF12 打开F12开发者工具,选中之后F5刷新查看server类型即可 配置文件 直接包含或者访问如果有回显就是, NGINX:NGINX 的配置文件通常位于 /etc/nginx/ 目录下,具体的网站配…...

Android 注解的语法原理和使用方法

Android 注解的语法原理和使用方法 关于我 在 Android 开发中,注解(Annotation)是一种强大的工具,用于在代码中添加元数据。注解可以简化代码、提高可读性、减少样板代码,并且在一定程度上增强编译时的类型检查。本文…...

YOLOv10改进 | Conv篇 | 利用FasterBlock二次创新C2f提出一种全新的结构(全网独家首发,参数量下降70W)

一、本文介绍 本文给大家带来的改进机制是利用FasterNet的FasterBlock改进特征提取网络,将其用来改进ResNet网络,其旨在提高计算速度而不牺牲准确性,特别是在视觉任务中。它通过一种称为部分卷积(PConv)的新技术来减少…...

实验-ENSP实现防火墙区域策略与用户管理

目录 实验拓扑 自己搭建拓扑 实验要求 实验步骤 整通总公司内网 sw3配置vlan 防火墙配置IP 配置安全策略(DMZ区内的服务器,办公区仅能在办公时间内(9: 00- 18:00)可以访问,生产区的设备全天可以访问) 配置nat策…...

【游戏客户端】大话slg玩法架构(二)背景地图

【游戏客户端】大话slg玩法架构(二)背景地图 大家好,我是Lampard家杰~~ 今天我们继续给大家分享SLG玩法的实现架构,关于SLG玩法的介绍可以参考这篇上一篇文章:【游戏客户端】制作率土之滨Like玩法 PS:和之前…...

git-工作场景

1. 远程分支为准 强制切换到远程分支并忽略本地未提交的修改 git fetch origin # 获取最新的远程分支信息 git reset --hard origin/feature_server_env_debug_20240604 # 强制切换到远程分支,并忽略本地修改 2. 切换分支 1. **查看所有分支:**…...

coco dataset标签数据结构(json文件)

COCO数据集现在有3种标注类型:object instances(目标实例), object keypoints(目标上的关键点), 和image captions(看图说话),使用json文件存储。 NameImagesLabelstrain linkhttp:…...

GaussDB关键技术原理:高性能(四)

GaussDB关键技术原理:高性能(三)从查询重写RBO、物理优化CBO、分布式优化器、布式执行框架、轻量全局事务管理GTM-lite等五方面对高性能关键技术进行了解读,本篇将从USTORE存储引擎、计划缓存计划技术、数据分区与分区剪枝、列式存…...

总结之企业微信(一)——创建外部群二维码,用户扫码入群

创建外部群 企微接口中没有直接通过服务端API接口创建外部群 可以通过jssdk创建外部群:引用jssdk调用会话接口wx.openEnterpriseChat https://work.weixin.qq.com/api/doc/90000/90136/90511 创建外部群二维码 需要通过企业微信的应用,并且配置客户联…...

透视数据治理:企业如何衡量数据治理的效果?

在企业运营中,各个业务部门的成功与否都是直观且易于量化的,像销售部门卖了多少产品又为企业带来多少盈利,这些都能用具体的数字来说话。但当谈到数据治理的成效时,许多企业与决策者却感到迷茫。 数据治理的重要性不言而喻&#…...

在软件开发中正确使用MySQL日期时间类型的深度解析

在日常软件开发场景中,时间信息的存储是底层且核心的需求。从金融交易的精确记账时间、用户操作的行为日志,到供应链系统的物流节点时间戳,时间数据的准确性直接决定业务逻辑的可靠性。MySQL作为主流关系型数据库,其日期时间类型的…...

synchronized 学习

学习源: https://www.bilibili.com/video/BV1aJ411V763?spm_id_from333.788.videopod.episodes&vd_source32e1c41a9370911ab06d12fbc36c4ebc 1.应用场景 不超卖,也要考虑性能问题(场景) 2.常见面试问题: sync出…...

Zustand 状态管理库:极简而强大的解决方案

Zustand 是一个轻量级、快速和可扩展的状态管理库,特别适合 React 应用。它以简洁的 API 和高效的性能解决了 Redux 等状态管理方案中的繁琐问题。 核心优势对比 基本使用指南 1. 创建 Store // store.js import create from zustandconst useStore create((set)…...

2025年能源电力系统与流体力学国际会议 (EPSFD 2025)

2025年能源电力系统与流体力学国际会议(EPSFD 2025)将于本年度在美丽的杭州盛大召开。作为全球能源、电力系统以及流体力学领域的顶级盛会,EPSFD 2025旨在为来自世界各地的科学家、工程师和研究人员提供一个展示最新研究成果、分享实践经验及…...

线程同步:确保多线程程序的安全与高效!

全文目录: 开篇语前序前言第一部分:线程同步的概念与问题1.1 线程同步的概念1.2 线程同步的问题1.3 线程同步的解决方案 第二部分:synchronized关键字的使用2.1 使用 synchronized修饰方法2.2 使用 synchronized修饰代码块 第三部分&#xff…...

java 实现excel文件转pdf | 无水印 | 无限制

文章目录 目录 文章目录 前言 1.项目远程仓库配置 2.pom文件引入相关依赖 3.代码破解 二、Excel转PDF 1.代码实现 2.Aspose.License.xml 授权文件 总结 前言 java处理excel转pdf一直没找到什么好用的免费jar包工具,自己手写的难度,恐怕高级程序员花费一年的事件,也…...

可靠性+灵活性:电力载波技术在楼宇自控中的核心价值

可靠性灵活性:电力载波技术在楼宇自控中的核心价值 在智能楼宇的自动化控制中,电力载波技术(PLC)凭借其独特的优势,正成为构建高效、稳定、灵活系统的核心解决方案。它利用现有电力线路传输数据,无需额外布…...

为什么需要建设工程项目管理?工程项目管理有哪些亮点功能?

在建筑行业,项目管理的重要性不言而喻。随着工程规模的扩大、技术复杂度的提升,传统的管理模式已经难以满足现代工程的需求。过去,许多企业依赖手工记录、口头沟通和分散的信息管理,导致效率低下、成本失控、风险频发。例如&#…...

在 Nginx Stream 层“改写”MQTT ngx_stream_mqtt_filter_module

1、为什么要修改 CONNECT 报文? 多租户隔离:自动为接入设备追加租户前缀,后端按 ClientID 拆分队列。零代码鉴权:将入站用户名替换为 OAuth Access-Token,后端 Broker 统一校验。灰度发布:根据 IP/地理位写…...

多模态商品数据接口:融合图像、语音与文字的下一代商品详情体验

一、多模态商品数据接口的技术架构 (一)多模态数据融合引擎 跨模态语义对齐 通过Transformer架构实现图像、语音、文字的语义关联。例如,当用户上传一张“蓝色连衣裙”的图片时,接口可自动提取图像中的颜色(RGB值&…...