git 回滚
查看分支提交历史,确认需要回退的版本1git log 进行版本回退1git reset --hard commit_id 推送至远程分支直接 git push origin 会报错,因为本地分支已经回滚,提交历史与远程分支不一致,导致 Git 拒绝推送。 Git 会提示需要先合并远程的更改,然后再推送。 所以需要强制推送,覆盖远程分支的提交历史。强制推送会覆盖远程分支的历史,导致远程分支的领先的所有提交丢失 1git push --force origin
Homepage导航站
创建挂载目录1mkdir -p /opt/docker_data/homepage 运行 docker 容器我使用的是 root 用户,PUID 和 PGID 都是 0。 如果使用其他用户可以在终端输入 id 命令查看当前用户的 PUID 和 PGID 12345678docker run -d --name homepage \ -e PUID=0 \ -e PGID=0 \ -p 3000:3000 \ -v /opt/docker_data/homepage:/app/config \ -v /var/run/docker.sock:/var/run/docker.sock:ro \ --restart unless-stopped \ ghcr.io/gethomepage/homepage:latest
spring-cloud-gateway
spring-cloud-gatewayspring-cloud-gateway 共有 3 种过滤器: 全局过滤器 (GlobalFilter) 路由过滤器 (GatewayFilter) 自定义过滤器工厂 (AbstractGatewayFilterFactory) 现在选择自定义过滤器工厂 (AbstractGatewayFilterFactory)继承抽象类 AbstractGatewayFilterFactory, 实现 apply 方法 可以传入一个自定义的配置类 1234567891011121314151617181920212223242526@Componentpublic class SignatureVerificationGatewayFilterFactory extends AbstractGatewayFilterFactory<SignatureVerificationGatewayFilterFactory.Config> { public...
JWT双令牌(双token)实现登录验证
处理 JWT 的过期机制并结合刷新 Token 实现无缝登录是一个常见的需求。为了防止用户频繁登录,同时保持安全性,通常会使用短期有效的访问 Token(Access Token)和长期有效的刷新 Token(Refresh Token)来平衡两者。下面将逐步介绍如何实现这一机制。 访问 Token 和刷新 Token 的基本概念 **访问 Token (Access Token)**:用于验证用户的身份,并授予访问资源的权限。它通常短期有效(如 15 分钟至 1 小时),以减少长期暴露的安全风险。 **刷新 Token (Refresh Token)**:用于在访问 Token 过期后,获取新的访问 Token。它具有较长的有效期(如几天或几周),并仅在服务端存储或安全地处理,用户无法直接使用它来访问资源。 基本流程 用户登录:用户通过用户名和密码或其他认证方式登录,服务器验证通过后,生成并返回一个 访问 Token 和一个 刷新 Token。 使用访问 Token 访问资源:在访问受保护的资源时,用户每次请求都需要携带访问 Token(通常放在 HTTP...
docker部署SyncClipboard
在宿主机中拷贝一份服务器配置文件 appsettings.json12mkdir -p /opt/docker_data/syncclipboard-server && cd /opt/docker_data/syncclipboard-servercurl -sL https://github.com/Jeric-X/SyncClipboard/raw/master/src/SyncClipboard.Server/appsettings.json > appsettings.json 在配置文件中修改用户名、密码启动 docker 容器123456docker run -d \ --name=syncclipboard-server \ -p 5033:5033 \ -v /opt/docker_data/syncclipboard-server/appsettings.json:/app/appsettings.json \ --restart unless-stopped \ ...
springcloud引入nacos踩坑
在配置网关路由时,url 设置为服务名称时无法调用1、将 url 设置为 ip 时可以正常访问,所以猜测时 nacos 的服务发现问题1234567891011private final DiscoveryClient discoveryClient;public ServiceDiscoveryController(DiscoveryClient discoveryClient) { this.discoveryClient = discoveryClient;}@GetMapping("/services")public ResponseEntity<List<String>> getServices() { List<String> services = discoveryClient.getServices().stream().collect(Collectors.toList()); return...
拦截器
springboot拦截器
linux配置密钥登录
生成 SSH 密钥对生成一个新的 SSH 密钥对,不设置密码: 1ssh-keygen -t rsa -b 4096 -C "your_email@example.com" 当系统提示你输入文件保存路径时,按 Enter 键以使用默认路径(通常是 /root/.ssh/id_rsa)。然后,当系统提示你输入密码时,直接按 Enter 键两次(密码为空)。 配置密钥对/root/.ssh 目录下应该会有密钥文件 id_rsa 和公钥文件 id_rsa.pub 密钥需要存放在 连接的机器上, 公钥需要将其内容写入 被连接的机器 的 /root/.ssh/authorized_keys 文件中 使用密钥连接1ssh -i ~/.ssh/id_rsa username@ip
12306项目环境
差别mysql redis RocketMQ Nacos的端口3306 6379 9876 8848 9848分别修改为13306 16379 19876 18848 19848