Files
qrcodeService/README.md

55 lines
2.7 KiB
Markdown

# 施工图审查系统二维码短链生成服务
## 开发环境
- visual studio 2019
- dotnet5 sdk
## 项目说明
- 授权与鉴权中间件 `CheckSignMiddleware`
需要鉴权的接口通过请求中的appid,time计算出签名和请求带来的sign比较
- 获取二维码 `LinkController.Create`
返回短链地址
- 从短链地址重定向到实际网址 `RedirectController.Index`
从数据库中获取实际地址并带上校验参数 浏览器重定向到目标地址
## 发布说明
- 部署在Linux系统中 以守护进程方式运行
文档: [netcore and systemd](https://devblogs.microsoft.com/dotnet/net-core-and-systemd/)
- 服务器信息
- ip地址:10.19.94.213 系统版本 ubuntu
- 守护程序配置文件 `/etc/systemd/system/qrcode.service`
- 项目发布主程序入口 `/home/kuanyi/git/sgt_qrcode/QRCodeService/bin/Debug/net5.0/QRCodeService`
- 工作目录 `/home/kuanyi/git/sgt_qrcode/QRCodeService/bin/Debug/net5.0/`
## 更新程序
- vs发布QRCodeService到文件系统路径下 比如 `/Publish`
- 通过堡垒机`WinScp``/Publish`目录下的所有文件到服务器上
- `systemctl stop qrcode` 关闭二维码服务
- 用上传的新文件包内容替换工作目录下的文件
- `systemctl start qrcode` 重新启动二维码服务
## 20250217 21点 更新至1Panel中运行
- http://10.19.94.213:8088/1Panel
- 应用商店 - 已安装 - localNetCoreApp
- 目录迁移至 /opt/1panel/apps/local/NetCoreApp/localNetCoreApp/data/
- 镜像 AspNet
- NET 版本 .NET 5.0
- 系统 Alpine
- 需要运行的应用程序 QRCodeService.dll
- HTTP 网页端口 5001
- 反向代理
- 应用商店 - 已安装 - openresty
- /opt/1panel/apps/openresty/openresty
- 配置在 网站 10.19.94.213 -> 配置-> 反向代理
- mysql 2025-02-17
- 默认禁止远程登录,需要连接的话更新一下
- `/etc/mysql/mariadb.conf.d/50-server.cnf` 30行 `bind-address = 0.0.0.0`
- 目前链路全开
- `bind-address=0.0.0.0`
- `global_priv表Host=% where user='qrcode'`
- `防火墙3306端口全开`
- 任何一个关闭所有 只留127.0.0.1 页面就访问不通mysql. ?????????
## 2025-02-20 19:20 左右更新
- mysql 2025-02-20 暴出mariadb 版本有漏洞, 重新在docker里搭
- 先将表结构一摸一样搞过来, 然后Link表自增列去除 , 然后在将所有数据导入到docker里新库里 Link表 1613万+ 条数据
- 内部端口 3306 对外映射 3316 , 开发电脑连94.213 的 3316
- 同是docker局域网 使用内网ip 的 3306 端口连接 , 内网ip在1panel的容器里有ip地址
- 测试时 使用 `nc -zv ipaddress port` 命令测试docker内部网络端口是否联通