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增加࿱…...
uni-app三部曲之三: 路由拦截
1.引言 路由拦截,个人理解就是在页面跳转的时候,增加一级拦截器,实现一些自定义的功能,其中最重要的就是判断跳转的页面是否需要登录后查看,如果需要登录后查看且此时系统并未登录,就需要跳转到登录页&…...
专注于国产FPGA芯片研发的异格技术Pre-A+轮融资,博将控股再次投资
近日,苏州异格技术有限公司(以下简称“异格技术”)宣布成功完成数亿元的Pre-A轮融资,由博将控股在参与Pre-A轮投资后,持续投资。这标志着继2022年获得经纬中国、红点中国、红杉中国等机构数亿元天使轮融资后࿰…...
【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 创建外部群二维码 需要通过企业微信的应用,并且配置客户联…...
透视数据治理:企业如何衡量数据治理的效果?
在企业运营中,各个业务部门的成功与否都是直观且易于量化的,像销售部门卖了多少产品又为企业带来多少盈利,这些都能用具体的数字来说话。但当谈到数据治理的成效时,许多企业与决策者却感到迷茫。 数据治理的重要性不言而喻&#…...
Prompt Tuning、P-Tuning、Prefix Tuning的区别
一、Prompt Tuning、P-Tuning、Prefix Tuning的区别 1. Prompt Tuning(提示调优) 核心思想:固定预训练模型参数,仅学习额外的连续提示向量(通常是嵌入层的一部分)。实现方式:在输入文本前添加可训练的连续向量(软提示),模型只更新这些提示参数。优势:参数量少(仅提…...
ubuntu搭建nfs服务centos挂载访问
在Ubuntu上设置NFS服务器 在Ubuntu上,你可以使用apt包管理器来安装NFS服务器。打开终端并运行: sudo apt update sudo apt install nfs-kernel-server创建共享目录 创建一个目录用于共享,例如/shared: sudo mkdir /shared sud…...
【git】把本地更改提交远程新分支feature_g
创建并切换新分支 git checkout -b feature_g 添加并提交更改 git add . git commit -m “实现图片上传功能” 推送到远程 git push -u origin feature_g...
mysql已经安装,但是通过rpm -q 没有找mysql相关的已安装包
文章目录 现象:mysql已经安装,但是通过rpm -q 没有找mysql相关的已安装包遇到 rpm 命令找不到已经安装的 MySQL 包时,可能是因为以下几个原因:1.MySQL 不是通过 RPM 包安装的2.RPM 数据库损坏3.使用了不同的包名或路径4.使用其他包…...
OPenCV CUDA模块图像处理-----对图像执行 均值漂移滤波(Mean Shift Filtering)函数meanShiftFiltering()
操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 在 GPU 上对图像执行 均值漂移滤波(Mean Shift Filtering),用于图像分割或平滑处理。 该函数将输入图像中的…...
从面试角度回答Android中ContentProvider启动原理
Android中ContentProvider原理的面试角度解析,分为已启动和未启动两种场景: 一、ContentProvider已启动的情况 1. 核心流程 触发条件:当其他组件(如Activity、Service)通过ContentR…...
TJCTF 2025
还以为是天津的。这个比较容易,虽然绕了点弯,可还是把CP AK了,不过我会的别人也会,还是没啥名次。记录一下吧。 Crypto bacon-bits with open(flag.txt) as f: flag f.read().strip() with open(text.txt) as t: text t.read…...
向量几何的二元性:叉乘模长与内积投影的深层联系
在数学与物理的空间世界中,向量运算构成了理解几何结构的基石。叉乘(外积)与点积(内积)作为向量代数的两大支柱,表面上呈现出截然不同的几何意义与代数形式,却在深层次上揭示了向量间相互作用的…...
LUA+Reids实现库存秒杀预扣减 记录流水 以及自己的思考
目录 lua脚本 记录流水 记录流水的作用 流水什么时候删除 我们在做库存扣减的时候,显示基于Lua脚本和Redis实现的预扣减 这样可以在秒杀扣减的时候保证操作的原子性和高效性 lua脚本 // ... 已有代码 ...Overridepublic InventoryResponse decrease(Inventor…...
npm安装electron下载太慢,导致报错
npm安装electron下载太慢,导致报错 背景 想学习electron框架做个桌面应用,卡在了安装依赖(无语了)。。。一开始以为node版本或者npm版本太低问题,调整版本后还是报错。偶尔执行install命令后,可以开始下载…...
