施工图审查系统二维码短链生成服务
开发环境
- visual studio 2019
- dotnet5 sdk
项目说明
- 授权与鉴权中间件
CheckSignMiddleware
需要鉴权的接口通过请求中的appid,time计算出签名和请求带来的sign比较 - 获取二维码
LinkController.Create返回短链地址 - 从短链地址重定向到实际网址
RedirectController.Index
从数据库中获取实际地址并带上校验参数 浏览器重定向到目标地址
发布说明
- 部署在Linux系统中 以守护进程方式运行
文档: netcore 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.cnf30行bind-address = 0.0.0.0- 目前链路全开
bind-address=0.0.0.0global_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内部网络端口是否联通
Description
Languages
C#
97.7%
Dockerfile
1.3%
HTML
1%