20260610升级指南


YESCMS 升级更新日志(2025-01-23 至 2026-06-10)

总览

  • 运行时升级到 .NET 8 / ASP.NET Core MVC,Entity Framework Core 升级到 8.x。
  • 后台内容编辑新增 Markdown 支持,保留 TinyMCE,并按文章内容格式在前台渲染。
  • 数据库配置改造为 Database:Provider + Database:ConnectionString,支持 SqlServerMySqlPostgreSqlSqlite
  • 新增 Docker / docker-compose 部署能力,支持日志/搜索索引/上传数据持久化。
  • 安全侧加强了密码哈希、跨站请求来源校验、上传/外链图片校验、会话 Cookie 策略等。
  • 静态页面、文章分类、缓存、搜索索引和 wwwroot/data 持久化路径做了兼容性改造。
  • 关闭在线更新渠道。
  • FIX:修复登录信息丢失bug,登录勾选记住我会保留7天免登录
  • FIX:修复文章查看状态点击编辑登录后抛异常的bug
  • FIX:修复更改档案类别代码后,关联文章丢失的bug

重大升级点

运行环境

  • 后端目标框架统一为 net8.0
  • 支持Docker部署

数据库

  • 新增统一配置:
{
  "Database": {
    "Provider": "SqlServer",
    "ConnectionString": ""
  }
}
  • 兼容旧配置 ConnectionStrings:DBConn,但建议升级后迁移到 Database:ConnectionString
  • 数据库 Provider 支持:
  • SqlServer
  • MySql
  • PostgreSql
  • Sqlite

部署

一、文件目录结构调整

新版把用户上传文件和生成文件统一放到:

wwwroot\data

对外访问地址不变,例如:

/images/logo.png

但实际文件建议放到:

wwwroot\data\images\logo.png

如果旧版 wwwroot 下有以下目录:

wwwroot\articleview
wwwroot\html-cache
wwwroot\images
wwwroot\Template
wwwroot\TemplateD1

升级后请移动或复制到:

wwwroot\data\articleview
wwwroot\data\html-cache
wwwroot\data\images
wwwroot\data\Template
wwwroot\data\TemplateD1

也就是保持目录名不变,只是在中间增加一层 data

迁移前:

wwwroot
├─ articleview
├─ html-cache
├─ images
├─ Template
└─ TemplateD1

迁移后:

wwwroot
└─ data
   ├─ articleview
   ├─ html-cache
   ├─ images
   ├─ Template
   └─ TemplateD1

如果旧的目录两种有/update目录,检查一下update目录中是不是都是图片文件,如果是,就把这些文件都放到wwwroot/data/images/article/000000目录中。注意不要再包含子目录

二、Docker 部署

docker-compose 文件内容参考

version: '3'
services:
  yescms:
    container_name: yescms
    image: crpi-jtj1ngfodk8h1nu1.cn-shenzhen.personal.cr.aliyuncs.com/garsonzhang/yescms:latest
    ports:
      - "18090:8080"
    environment:
      ASPNETCORE_ENVIRONMENT: Production
      ASPNETCORE_URLS: http://+:8080
      # SQL Server example. Use a strong password and real database name in production.
      Database__Provider: "SqlServer"
      Database__ConnectionString: "Server=127.0.0.1;Database=cms_yesdotnet;User ID=cms;Password=cms;Encrypt=False;TrustServerCertificate=True;Connect Timeout=60;"
    volumes:
      - /opt/yescms/logs:/app/logs
      - /opt/yescms/wwwroot-data:/app/wwwroot/data
    restart: unless-stopped

三、IIS部署后

appsettings.json文件调整 请修改其中的数据库配置:

{
  "Database": {
    "Provider": "SqlServer",
    "ConnectionString": "Server=127.0.0.1;Database=yescms;User ID=sa;Password=你的密码;Encrypt=False;TrustServerCertificate=True;Connect Timeout=60;"
  },
  "DBModel": "Product"
}
版权声明:本文为YES开发框架网发布内容,转载请附上原文出处连接
张国生
上一篇:201216升级指南
评论列表

发表评论

评论内容
昵称: