自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(80)
  • 收藏
  • 关注

原创 Ubuntu安装Tomcat

如果需要配置 Tomcat 管理员用户,可以编辑。来验证 Tomcat 是否安装成功。文件,添加管理员权限设置。现在你可以通过浏览器访问。

2025-09-19 08:46:28 50

原创 Nginx动静分离实验步骤

③没有报错的话就在192.168.11.8这台虚拟机里cd /app/blog 在这个路径里创建新文件 vim wp-config.php 在这个文件里添加让添加的东西,保存退出。配置location将.php结尾的交给PHP服务器。根目录要指向图片根目录,且根目录下的图片要与原本图片文件目录结构一致。达到了图片从图片服务器返回,静态nginx直接返回,动态交给PHP进行处理。PHP服务器的配置比较简单,主要讲PHP以FPM模式安装后进行简单的配置即可。首先Nginx与PHP服务器都要挂载NFS。

2025-09-17 18:02:39 240

原创 搭建 PHP 网站

定期更新 PHP 程序(如 WordPress 后台的 “更新” 功能),修复安全漏洞。若出现 “无法写入文件” 或 “权限被拒绝”,重新执行步骤一中的权限设置命令,确保。安装完成后,删除网站根目录下的安装向导文件(如 WordPress 的。通过以上步骤,即可在 LNMP 环境上成功搭建并运行 PHP 网站。按提示设置网站名称、管理员账号密码,完成后即可登录网站后台管理。若能登录,说明数据库配置正确,问题可能在 PHP 代码中。若网站提示缺少某 PHP 扩展(如。执行以下 SQL 命令(替换。

2025-09-16 18:13:37 490

原创 Ubuntu22.04部署-LNMP

在输入密码时,系统为了最大限度地保证数据安全,命令行将不做任何回显。在输入密码时,系统为了最大限度地保证数据安全,命令行将不做任何回显。如果您的防火墙为开启状态,需要运行以下命令,关闭防火墙并关闭开机自启动防火墙。1.运行以下命令,在Nginx网站根目录中,新建phpinfo.php文件。1.运行以下命令,安装PHP与PHP-MySQL模块。1.运行以下命令,更新Ubuntu系统内的软件包。1.运行以下命令,打开Nginx默认的配置文件。4.运行以下命令,对MySQL进行安全性配置。

2025-09-16 17:53:30 835

原创 Nginx路径root与alias的区别

场景root 行为alias 行为路径处理拼接 root + location + 资源用 alias 替换 location 后 + 资源适用场景通用目录映射路径重命名或特殊路径映射末尾斜杠不强制要求建议添加,避免路径解析问题正则匹配不支持在正则 location 中使用支持在正则 location 中使用。

2025-09-16 09:37:24 253

原创 HTTP状态码

先看首位数字:快速判断是 “客户端问题(4xx)”“服务器问题(5xx)” 还是 “重定向(3xx)”;结合具体场景4xx:先检查 URL 是否正确、参数是否完整、是否登录 / 有权限;5xx:大概率是服务器故障,可尝试刷新或联系网站维护人员;3xx:注意是否是域名变更、缓存问题,或按提示跳转。通过浏览器 “开发者工具”(F12 → Network 面板),可查看每一个请求的具体状态码,是排查前端、后端、网络问题的重要工具。

2025-09-15 21:23:19 763

原创 一些杂乱的知识点

中间人攻击的本质是“两头冒充”(冒充你、冒充网站),而 CA 证书的作用就是给网站的 “身份” 和 “公钥” 做官方背书—— 让你能通过浏览器确认:“我连的这个网站,确实是我想找的那个,不是中间人伪装的”。rewrite 重写:常用于内部 URL 重写,比如将动态 URL 重写为静态 URL,或者将复杂的 URL 结构简化。return 重定向:常用于永久或临时改变 URL,比如网站改版后将旧 URL 重定向到新 URL。2.= : 精确匹配,匹配的是路径本身,不使用前缀和正则表达式;

2025-09-15 21:22:01 150

原创 Nginx负载均衡集群实验步骤

本实验基于 “1 台 Nginx 代理服务器 + 2 台后端 Web 服务器” 架构,实现基础负载均衡功能(以轮询策略为例),适用于 Linux 环境(如 CentOS 7/8、Ubuntu)。

2025-09-15 20:13:37 936

原创 nginx优化配置

灰度发布:增量发布,逐步的用新版本替换旧版本,实现平稳过度;新版本出现问题时,方便及时回滚;长连接:减少服务器维护因为与客户端建立http连接产生的大量tcp三次握手四次断开的开销。Nginx平滑升级;在不停止Nginx服务的情况下,更新Nginx的版本;gizp on:是否压缩,压缩数据可以节省宽带;Worker进程数量;

2025-09-15 19:32:40 91

原创 极简版 Nginx 反向代理实验步骤

以上步骤完成即实现了最基础的反向代理功能,所有操作均围绕 “请求转发” 核心目标,去除了额外扩展配置。

2025-09-15 16:04:23 496

原创 nginx正向代理与反向代理

2025-09-15 14:41:46 257

原创 Nginx 路径配置实验步骤

指令核心逻辑示例(URL:/static/a.css)实际文件路径root父目录 + URL 路径拼接alias直接替换 URL 路径为目标目录。

2025-09-12 15:57:08 601

原创 shell Linux三剑客

工具核心定位优势场景关键操作grep文本搜索查找匹配行、过滤内容搜索、统计、反向匹配sed流编辑批量修改(替换、删除、插入)行级修改、正则替换awk文本分析列操作、数据统计、编程逻辑字段提取、条件计算、聚合统计grep:“找”—— 快速定位符合条件的文本行;sed:“改”—— 批量修改文本内容(行级操作);awk:“算”—— 按列分析、统计数据(字段级操作)。掌握这三者,能极大提升 Linux 命令行下的文本处理效率,是运维、开发、数据分析等岗位的必备技能。

2025-09-12 09:51:10 971

原创 Nginx虚拟主机配置

(这个是IP 192.168.146.10的配置内容,其他两个IP配置的时候第二行的10改成20或30,第四行的10改成20或30)7.测试 Nginx 配置文件语法是否正确。4.向指定的 HTML 文件写入内容。1. 同一个网卡临时添加多个IP。6.在文件里添加内容。

2025-09-12 09:34:27 194

原创 Nginx的配置

二进制流MIME类型,表示“未知的二进制数据”。#设置独立的访问日志路径。#设置网站根目录对应的系统目录;#gzip on;#启动压缩,节省宽带,省流量,但是会占用CPU资源。nginx 将检查配置文件的语法的正确性,,并尝试打开配置文件中所引用到的文件。#引入加载外部模块;location / { # 设置网站的根路径;#启动work进程的用户。

2025-09-11 16:11:05 482

原创 Nginx简介

异步非阻塞是“任务完成了通知你",I0多路复用是“同时盯多个任务,看谁先完成”Master监控所有Work进程,旧的Work进程随时可以启动新的进程;Work进程使用单线程接受请求处理请求,避免了线程切换带来的消耗;·负载均衡:将请求(流量)分发给集群中的多台服务器,避免单点压力过大。·网站(后端)入口:根据访问请求的路径参数,进行分发实现动静分离;IO多路复用技术:异步非阻塞架构,同时处理更多的请求,·静态资源服务器:html、css、js、img、视频、音频。·Nginx架构:多进程+单线程架构;

2025-09-10 17:49:19 427

原创 shell信号发送与捕捉

如果父进程没有处理这个信号,也没有等待(wait)子进程,子进程虽然终止,但是还会在内核进程表中占有表项,这时的子进程称为僵尸 进程。这种情 况我们应该避免(父进程或者忽略SIGCHILD信号,或者捕捉它,或者wait它派生的子进程,或者父进程先终止,这时子进程的终止自动由init进程 来接管)。# TERM(15): 终止,是不带参数时kill默认发送的信号,默认是杀死进程,与SIGKILL不同的是该信号可以被阻塞和处理。# ===============了解===============

2025-09-10 12:10:59 472

原创 shell特殊符号

fg 编号 将进程放到前台运行。bg 编号 放到后台继续运行。jobs 查看后台进程号。

2025-09-09 19:30:10 389

原创 shell常用数据处理命令

f 显示的列, -f1代表第一列,-f1,2,3。3.sort 排序显示,默认排序规则是字符编码排序。-D 显示“所有重复的行”(含每个重复实例)-d 仅显示“有重复的行”(需相邻重复)-c 截取每行的某个字符,-c1-5。-f n 忽略前n个字段(按字段去重)-s n 忽略前n个字符(按字符去重)-u 仅显示“无重复的行”(唯一行)-n 按照数字的排序规则排序。-r 降序排序(默认升序)2.tr 替换字符,删除字符;-c 统计每行的重复次数。-d 删除匹配到的字符。4.uniq 处理文本重复行。

2025-09-09 11:26:06 363

原创 shell数组

将命令输出的多行 / 多列结果,直接作为数组元素(用$(命令)# 定义数组,元素为当前目录下的所有.sh文件(ls *.sh的结果)# 定义数组,元素为系统中所有正在运行的进程名(ps的结果)

2025-09-08 17:27:57 586

原创 shell运算

在 Shell 脚本中进行运算,主要有和。

2025-09-08 14:38:52 586

原创 shell内置命令

1.echo是一个shell内置命令,用于在终端输出字符串,并在最后默认加上换行符。语法:read 【-options】【var1 var2】输出不换行语法: echo -n 字符串。默认输出换行语法: echo 字符串。echo -e 含有转义字符的数据。\c清除echo结尾的换行。二.read读取控制台输入。3.echo输出转义字符。一.echo输出字符串。

2025-09-03 18:15:08 206

原创 test命令与参数

在Linux中,test命令是“条件测试工具”,用于判断文件属性、字符串关系、数值大小等,返回值为‘0’(表示测试结果为“真”)或非‘0’(表示“假”),常与‘if’、‘while’等流程控制语句配合使用。

2025-09-03 17:27:50 714

原创 九九乘法表脚本

for ((i=1;i<=9;i++));do# 内层循环控制每行的列数(1-当前行数)for ((j=1;j<=i;j++));do# 格式化输出,确保对齐(%d 表示整数,%dx%d=%-2d 控制格式:乘积占2位,左对齐)done# 每行结束后换行echodone这段代码是用来生成。

2025-09-03 15:20:20 219

原创 脚本的变量

内置变量(特殊变量):$?, $@ , $* , $#数据的别名,创建变量时,会在内存中开辟存储空间,将数据存入内存中,将变量名与内存地址绑定。////////////////:上一条命令执行是否成功,成功返回数字0,不成功返回1~127之间的数字。$*:脚本后面所有参数,参数当成一个整体输出,每一个变量参数之最c。$@:脚本后面所有参数,参数是独立的,也是全部输出。$(命令) 等价‘命令’ 获取命令的执行结果。$@ 获取所有的参数 $#获取参数的数量。

2025-09-03 15:14:23 226

原创 shell基础

shell-script(脚本):一种解释型语言;作用:可以批量执行命令,实现一些自动化任务,例如一键安装脚本,自动发送邮件、短信、微信、钉钉,系统巡检,系统优化脚本等,数据库备份脚本、垃圾清理脚本。shell:是Linux命令解释器;它是用户与系统内核,之间交互的桥梁;Linux命令:重点三剑客(awk,grep,sed),运算,数据处理。写脚本:案例模仿,照着文档改写,需求分析、需求拆分、编写模块。基础语法:①变量②输入、输出③判断④循环⑤函数⑥数组。Linux+Vim+可选插件。

2025-09-02 11:25:21 127

原创 git基础命令

git reset --soft 哈希值 :软回滚,保留暂存区和工作区数据,用于下次提交。git reset --hard 哈希值:硬回滚,清楚暂存区和工作区数据,版本回退。切换分支:git checkout dev、git check master。合并分支:git checkout master、git merge dev。git reset --mixed 哈希值:混合回滚,清空暂存区,保留工作区。2.初始化仓库,.git目录,记录配置与每次提交的内容。类型仓库:ssh提交方式。

2025-09-01 19:43:40 175

原创 git常用命令

【代码】git常用命令。

2025-09-01 16:43:44 191

原创 git软件版本控制

1.作用:软件源码版本管理、多人协作开发、版本多分支开发、代码回滚(回退)等功能。①集中式版本控制:将代码仓库存放到一台服务上,开发式要依赖这台服务器。①公网仓库:gitee/github(开源、私有)③本地仓库:git客户端创建或者clone(克隆)②私有(局域网)仓库:gitlab/gitea。缺点:一但服务器宕机,会严重影响开发。优点:简单、方便管理、适合中小型项目。

2025-09-01 10:18:02 288

原创 redis单哨兵模式

编辑文件:vim /etc/redis/sentinel.conf 把IP改成主节点的ip地址。启动哨兵:redis-sentinel /etc/redis/sentinel.conf。找到源码包 cd redis-6.2.14。查看:ps -ef|grep redis。哨兵配置模板sentinel.conf。复制或替换sentinel.conf。

2025-08-28 19:32:23 179

原创 redis集群模式

重定向:在redis集群任意节点查询或存储修改数据时,通过哈希槽运算,未命中节点,则会重新计算查找节点。哈希槽:默认Redis官方在redis集群模式中内置了16384个槽。

2025-08-27 10:54:00 116

原创 redis主从复制

logfile "/usr/local/redis/log/redis_8000.log" #指定log日志路径,自己配,要求不同。pidfile /var/run/redis_8000.pid #指定不同的pid文件,注意三份配置文件不同。dir ./data/redis_8000 #这个指定rdb文件和aof文件的路径配置,要求改成不同。masterauth 123 #都配上吧,从服务到主服务的认证密码。4.主机登录redis写入信息,从库能查到主机信息,主从复制就成功了。使用脚本下载好redis。

2025-08-26 20:12:37 138

原创 Redis集群

cluster可以说是sentinal和主从模式的结合体,通过cluster可以实现主从和master重选功能,所以如果配置两个副本三个分片的话,就需要六个Redis实例。1.原理:第一次同步时,使用RDB(快照),在同步时,主服务器产生的数据,会记录偏移量,在同步完成后,进行偏移量的同步。2.主服务器宕机,10秒后未恢复,客观下线,选举新的主服务器,根据条件(数据完整性、服务器性能)3.缺点:只有从服务器能写入数据,从服务器只能读,主服务器一旦宕机,导致无法写入数据。

2025-08-26 15:31:41 185

原创 redis数据持久化

②AOF(追加日志):将每次增、删、改的操作添加到.aof日志中,默认明文存储(可压缩),占据更大的存储空间,保存数据时,运行资源占用少。追加日志可以实时添加。①RDB(快照):将内存中缓存的所有数据,都以二进制字符串的方式保存为一个.rdb文件。特点:占用存储效,当恢复所有数据时,速度快。不建议频繁生成快照。每次重启自动加载快照。2.作用:让redis服务重启后可以恢复之前的数据。1.数据持久化:将内存中的数据保存到磁盘中。

2025-08-26 10:50:19 109

原创 redis基础配置和命令

1.ping:用于测试与服务器的连接是否仍然生效,如果连接正常就返回一个PONG。有序集合类似集合,但每个元素关联一个分数(score),可按分数排序(如排行榜)。列表是有序的字符串集合,可做队列(FIFO)或栈(LIFO)。字符串是 Redis 最基础的数据类型,可存储文本、数字等。哈希适合存储对象(如用户信息、商品属性),键值对的集合。集合是无序的唯一元素集合,支持交集、并集等运算。2.echo:打印一个特定的信息,测试时使用。3.select:切换到指定数据库。查看具体命令的详细用法(如。

2025-08-25 15:59:52 660

原创 Redis

4.常用于缓存,存储热点数据、临时数据;通过加缓存,可以提高并发,减少成本。②MongoDB:文档型数据库,擅长存储JSON(BSON)数据;1.内存型数据库:数据存储到内存中的,读写速度快(GB级);NoSQL(Not Only SQL):非关系型数据库。2.支持高并发,查询11万次/秒,写入8万次/秒。3.支持持久化(将数据定期存储到磁盘中),①Redis:基于内存的KV的结构数据;③HBase:列存储数据库,大数据存储。①存储半结构化,非结构化数据。②海量存储(通过分布式)一.什么是NOSQL?

2025-08-25 10:46:13 182

原创 MyCAT高可用

- MySQL 8.0默认认证插件为caching_sha2_password,MHA需用mysql_native_password。修复原master(mha-node1),重新安装MySQL并配置为新master(mha-node2)的从库。-- 检查复制状态(确保Slave_IO_Running和Slave_SQL_Running均为Yes)log_slave_updates=ON # 从库同步时记录binlog(用于级联复制)在Slave(mha-node2/mha-node3)配置复制。

2025-08-22 15:48:45 575

原创 MyCAT分库分表

INSERT INTO sys_dict(dict_type,dict_name,dict_value) VALUES(1,"男",1);INSERT INTO sys_dict(dict_type,dict_name,dict_value) VALUES(1,"女",0);名称 ip port。在mycat里面配置这四个数据源。-- 添加dw0数据源。3.配置mycat集群配置。-- 添加dr0数据源。-- 添加dw1数据源。-- 添加dr1数据源。

2025-08-22 15:38:22 369

原创 MySQL编程开发

触发器(Triggers)是当某个表在进行(update/insert/delete)操作时,自动同步进行的关联操作。调整最大连接数为200。用户变量:用于临时存储,用户自己的数据,例如:Selectd的查询结果。局部变量:在存储过程内部定义变量,只在该存储过程内部有效。例如:在对A表insert一条新的数据,B表会同步记录日志。将复杂的sql语句,包含在存储过程中,存放在服务端。1. 系统变量:MySQL内置变量,#用户变量,临时存储查询的结果。会话变量:在当前对话(本次登录)# 可以通过set变量。

2025-08-22 14:56:05 315

原创 MyCAT2的主从配置

2.查询数据源:/*+ mycat:showDataSources{} */重置配置:/*+ mycat:resetConfig{} */-- 更多操作添加读的数据源。

2025-08-19 21:16:50 274

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除