{"id":19990922,"url":"https://github.com/ixre/cms","last_synced_at":"2026-03-15T04:04:03.001Z","repository":{"id":16931680,"uuid":"19693427","full_name":"ixre/cms","owner":"ixre","description":"DDD 开源.NET CMS、跨平台,  兼容.NET Core和ASP.NET,支持Docker容器","archived":false,"fork":false,"pushed_at":"2024-12-09T05:17:53.000Z","size":269733,"stargazers_count":335,"open_issues_count":6,"forks_count":173,"subscribers_count":45,"default_branch":"main","last_synced_at":"2024-12-09T06:24:39.733Z","etag":null,"topics":["c-sharp","cms","docker","linux","net6"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ixre.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2014-05-12T09:45:31.000Z","updated_at":"2024-12-09T05:17:57.000Z","dependencies_parsed_at":"2024-11-13T04:53:03.599Z","dependency_job_id":"8df61a3c-f365-48af-95c7-1b0b1580c79c","html_url":"https://github.com/ixre/cms","commit_stats":null,"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ixre%2Fcms","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ixre%2Fcms/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ixre%2Fcms/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ixre%2Fcms/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ixre","download_url":"https://codeload.github.com/ixre/cms/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252320044,"owners_count":21729056,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["c-sharp","cms","docker","linux","net6"],"created_at":"2024-11-13T04:51:32.122Z","updated_at":"2026-03-15T04:04:02.995Z","avatar_url":"https://github.com/ixre.png","language":"C#","readme":"﻿# JR-CMS\r\n\r\n![Build Status](https://cloud.drone.io/api/badges/ixre/cms/status.svg)\r\n\r\n基于.Net + DDD 构建的跨平台多站点开源内容管理系统; 同时支持`ASP.NET 4.x`和`.NET6.0`; 可以运行在 Windows,Linux,MacOSX 等操作系统；支持 Docker 容器。\r\n此项目已维护超过十年, 不断使用最合适的技术改进. 独立服务器上建议运行`.NET6`版,或上传到虚拟主机。\r\n\r\n￥ 99 元/年的虚拟主机也能开出多个网站, 推荐的虚拟主机参考:[主机服务商评测](#部署)\r\n\r\n## 特性\r\n\r\n- **跨平台**：支持 Windows、Linux、MacOSX 运行,同时支持虚拟主机。\r\n- **支持容器**：提供容器镜像，可用 Docker/Podman 部署至服务器。\r\n- **支援多种数据库**:支持 MySQL、SQLite、Sql Server、ACCESS 数据库, 推荐使用:MySQL 作为数据库。\r\n- **领域驱动设计**：核心代码使用 DDD 领域驱动设计构建，通过领域模型，提供了可扩展性。\r\n- **支持模板**：内置模板引擎，编写简单。后台支持模板的安装，网络安装，修改，备份等。\r\n- **源代码编辑**：支持在线编辑代码，支持 EMMET 插件自动生成 HTML 代码。\r\n- **支持插件**：支持网络安装插件，卸载插件等。利用插件可开发自定义功能。比如内嵌的采集系统。\r\n- **多站点支持**：支持后台创建站点、域名绑定、虚拟目录等，站点相互隔离，大大节省服务器空间开支和维护成本。\r\n- **内置 SEO 模块**:内置站内连接,URL 提供等 SEO 工具。\r\n\r\n在线[演示站点](http://www.56x.net)-(运行于 CentOS7.2)\r\n\r\n---\r\n\r\n_感谢您看到这个页面，如果对您有帮助，或您对此感兴趣，请 star 或 fork 支持一下作者吧！_\r\n\r\n## 快速开始\r\n\r\nWindows 平台下，下载安装包[链接](http://s.56x.net/jrcms_latest), 运行命令启动服务:\r\n\r\n```bash\r\ndotnet JR.Cms.App.dll --urls http://+:8000\r\n```\r\n\r\n通过浏览器访问：\u003chttp://localhost:8000\u003e\r\n\r\n## 发布项目\r\n\r\n打包发布需要环境如下：\r\n\r\n- `.NET Standard 2.1`及以上(.NET6/.NET7)\r\n- `.NET Framework 4.5.1`/`Mono`或以上\r\n\r\n编译打包`.Net`程序包运行命令:\r\n\r\n```bash\r\nsh ./build.sh\r\n```\r\n\r\n编译打包`ASP.NET`程序包,运行命令:\r\n\r\n```bash\r\nsh ./aspnet_pack.sh\r\n```\r\n\r\n_注:在 windows 平台打包,需要使用`shell`客户端运行命令, 比如:`git-bash` 安装`git`会默认安装_\r\n\r\n## 部署\r\n\r\n### 一.　通过虚拟主机部署\r\n\r\n- 需准备一台支持 ASP.NET 4.0 的虚拟主机。\r\n- 下载程序文件: [jrcms-aspnet-latest.tar.gz](https://github.com/ixre/cms/releases) 并解压。\r\n- 通过 FTP 上传 ASP.NET 版的所有文件到虚拟主机。\r\n- 虚拟主机设置线程池为集成模式,版本更改为.NET4.0 及以上。\r\n\r\n推荐虚拟主机服务商\r\n\r\n- 西部数码: 工单速度处理快, 虚拟主机买二年送一年。\r\n- 新网: 网络快,技术支持 24 小时在线处理。\r\n\r\n### 二.　使用服务器或 VPS 部署\r\n\r\nWindows(IIS)\r\n\r\n- 点击下载[安装包](https://github.com/ixre/cms/releases) 并解压；\r\n- 使用 IIS 添加站点，选择无托管代码, 完成部署。\r\n\r\nLinux、MacOSX\r\n\r\n```bash\r\ncurl -L https://github.com/ixre/cms/releases/download/v4.6/jrcms-latest.tar.gz | tar xz\r\ncd cms \u0026\u0026 dotnet JR.Cms.App.dll --urls http://+:8080\r\n```\r\n\r\n浏览器访问: \u003chttp://127.0.0.1:8080\u003e\r\n\r\n### 　使用 Docker 容器运行\r\n\r\n容器镜像托管在[docker.io](https://hub.docker.com/r/jarry6/cms), 操作步骤如下:\r\n\r\n创建存放 CMS 模板、数据、插件、文件的目录:\r\n\r\n```bash\r\nmkdir /data/cms \u0026\u0026 cd /data/cms\r\n```\r\n\r\n运行容器：\r\n\r\n```bash\r\n#!/usr/bin/env sh\r\npodman='podman';if [ $(whereis podman) = 'podman:' ]; then podman='docker';fi\r\n\r\nmkdir -p mysql/conf.d mysql/data config templates plugins uploads oem root\r\n\r\n$podman rm -f mysql-website\r\n$podman rm -f cms\r\n\r\n$podman run -d -p 3306:3306 --name mysql-website \\\r\n   -e MYSQL_ROOT_PASSWORD=123456 \\\r\n   -v $(pwd)/mysql/conf.d:/etc/mysql/conf.d \\\r\n   -v $(pwd)/mysql/data:/var/lib/mysql \\\r\n   --restart always mysql:8\r\n\r\n$podman run -d  --name cms -p 8080:80 \\\r\n    --volume=$(pwd)/config:/cms/config \\\r\n    --volume=$(pwd)/data:/cms/data \\\r\n    --volume=$(pwd)/templates:/cms/templates \\\r\n    --volume=$(pwd)/plugins:/cms/plugins \\\r\n    --volume=$(pwd)/uploads:/cms/uploads \\\r\n    --volume=$(pwd)/oem:/cms/oem \\\r\n    --volume=$(pwd)/root:/cms/root \\\r\n    --restart always jarry6/cms:latest\r\n```\r\n\r\n### 通过 Nginx 反向代理\r\n\r\n```nginx\r\nserver {\r\n    listen       80;\r\n    server_name     *.xxx.com;\r\n    # SSL配置\r\n    listen 443 default ssl;\r\n    http2 on;\r\n    ssl_certificate /etc/nginx/ssl/server.cer;\r\n    ssl_certificate_key /etc/nginx/ssl/server.key;\r\n    ssl_session_cache    shared:SSL:10m;\r\n    ssl_session_timeout  5m;\r\n    ssl_ciphers  HIGH:!aNULL:!MD5;\r\n    ssl_prefer_server_ciphers  on;\r\n\r\n    # gzip 配置\r\n\tgzip on;\r\n    gzip_min_length  10k;\r\n    gzip_comp_level 4;\r\n    gzip_types      application/javascript text/css text/javascript image/jpeg image/gif image/png;\r\n\r\n    client_max_body_size    10m;\r\n\r\n    location / {\r\n    proxy_pass      http://172.17.0.1:8081;\r\n    proxy_set_header Host $host;\r\n        proxy_set_header   X-Real-IP         $remote_addr;\r\n        proxy_set_header   X-Forwarded-For   $proxy_add_x_forwarded_for;\r\n        proxy_set_header   X-Forwarded-Proto $scheme;\r\n    }\r\n}\r\n\r\n```\r\n\r\n## 插件开发\r\n\r\n详见：[https://github.com/jsix/cms/tree/master/plugins](https://github.com/jsix/cms/tree/master/plugins)\r\n\r\n### 如何加入开发\r\n\r\n请先在 github 上 fork 代码,克隆到本地修改后直接提交。 交流 QQ 群：737378973\r\n\r\n### 捐助项目\r\n\r\n如果项目对您有帮助, 可以购买虚拟主机向作者发起捐助. 如果您有购买的需要, 可以通过添加 QQ/微信:[959398298](tencent://message?uin=959398298)购买主机发起对项目的赞助, 我们同时给到`八折优惠`和额外的技术支持。\r\n","funding_links":[],"categories":["C\\#"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fixre%2Fcms","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fixre%2Fcms","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fixre%2Fcms/lists"}