Files
qrcodeService/README.md

2.7 KiB

施工图审查系统二维码短链生成服务

开发环境

  • 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.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内部网络端口是否联通