发布时间:2026-04-25 浏览:139 评论: 0 留言/反馈/举报 您的位置: 美国-加利福尼亚州-洛杉矶县-El Monte
资源下载
EnovelCms_V1.0 简介:
EnovelCms 是我从实际运营需求出发,独立开发的一套轻量级小说内容管理系统,后台可扩展语言系统和选择前端语言,后台是中文,前端是英文,更适合中国人做英文小说网。前后打磨了一年多,目前已经在多个文学站点稳定运行。之所以把它拿出来,是因为我觉得这套结构对于想做小说站的朋友来说,足够简单、够用,而且不折腾。EnovelCms系统是我自己边做站边写的,所有功能都是“因为需要才加上去”,没有冗余的设计。用它跑一个小而美的文学站点,我觉得足够了。
使用帮助:https://www.wszzw.cn/?wensha_host=help&articleid=12
本资源免费分享,二开或者使用无需授权,但请保留版权信息!
一、系统概述
EnovelCms 是一套基于 PHP + MySQL 开发的小说 CMS,主要解决三个问题:小说管理、用户交互、流量变现。不依赖任何重型框架,核心代码集中在 includes/ 目录,前后台分离但共用同一套入口,跑起来只需要一个支持 PHP 7.0+ 的环境。
系统默认自带中英文双语支持,并且后台可以动态安装新的语言包,适合做多语言站点或者出海项目。
二、核心功能模块
1. 小说管理(后台)
小说增删改查:支持封面上传(自动检测 MIME 类型)、分类绑定、状态(连载/完结)切换。
章节管理:章节内容以文本文件形式存储在 /data/chapters/ 下,数据库只存路径、标题、字数。这样做两个好处:数据库不会因为大文本膨胀;章节文件可以直接备份或迁移。
总字数自动统计:每次增删改章节都会重新计算小说总字数,前台排行、筛选都依赖这个字段。
批量同步字数:后台提供一键同步所有小说总字数的功能,方便数据修复。
2. 用户系统
注册/登录:使用 password_hash() 加密,支持邮箱验证码注册(通过 PHPMailer 发送)。
密码找回:通过邮箱验证码重置密码,重置后新密码发送到用户邮箱。
个人中心:可修改邮箱、修改密码(需验证原密码)。
书架与阅读历史:自动记录用户阅读进度,书架展示最后阅读的章节,支持一键移除。
3. 金币与签到
每日签到:基础金币 + 连续签到奖励(按前一天获得金币的百分比浮动,可后台设置上下限)。
金币日志:所有金币变动(签到、兑换、管理员操作)都会记录明细。
金币兑换 VIP:按后台设置的比例,用金币兑换 VIP 月卡。
4. VIP 与支付
VIP 等级:目前只区分普通用户和 VIP 会员,VIP 到期后自动降级。
充值方式:支持人民币支付(集成易支付接口)和金币兑换两种方式。
异步回调:支付成功后自动延长用户 VIP 到期时间(支持叠加)。
订单管理:后台可查看所有充值订单,按状态、用户、订单号筛选。
5. 自定义榜单(DiyBlock)
这是一个比较灵活的功能。你可以在后台创建一个“榜单块”,给它起一个英文名称(如 top_views_week),然后设定:
数据数量、分类筛选、连载状态、字数范围
排序方式(点击/最新/更新/收藏)
时间段(今日/本周/本月/本年内)
缓存时间(秒)
前台调用时,只需要 DiyString('你的榜单名') 就能拿到数据,DiyStrTitle('你的榜单名') 拿到标题。系统会自动缓存查询结果,减轻数据库压力。
6. SEO 管理
每个页面类型(首页、书库、详情页、阅读页等)都可以独立设置标题、关键词、描述。支持变量替换,例如 {site_name}、{novel_title}、{chapter_title} 等,方便批量生成 SEO 信息。
7. 广告管理
支持多个广告位(首页轮播、侧边栏、详情页顶部/底部、阅读页顶部/底部等)。
广告内容直接填写 HTML/JS 代码,方便接入联盟广告或自定义图片链接。
VIP 会员自动免广告(前台判断用户等级后不输出广告位)。
8. 伪静态与路由
支持两种访问方式:/novel/123 这种伪静态路径,以及传统的 index.php?action=novel&id=123。
后台提供了 Apache、Nginx、IIS 三套规则的示例,直接复制即可。
路由解析在 includes/Router.php 中以正则匹配实现,不依赖第三方组件。
9. 安全机制
360webscan 防火墙:过滤 GET/POST/COOKIE 中的危险字符(SQL 注入、XSS、代码执行等),命中则拦截并友好提示。
CSRF 防护:后台所有表单都要求携带 csrf_token。
登录失败锁定:同一 IP 10 分钟内失败 3 次,锁定 30 分钟。
验证码:登录、注册、找回密码、搜索频率过高后都会要求输入图形验证码。
搜索频率限制:同一会话 60 秒内最多搜索 5 次,超出后要求验证码。
三、技术架构特点
后端语言 PHP 7.0 – 8.4(已测试)
数据库 MySQL 5.6+ / MariaDB
数据库驱动 PDO 优先,自动降级 MySQLi
前端样式 纯 CSS + FontAwesome 6,无框架依赖,移动端自适应
文件存储 章节内容存文本文件,封面和广告图片存 data/ 目录
多语言 语言包独立文件,后台可上传/删除,默认中英文
邮件发送 集成 PHPMailer(SMTP),支持 SSL/TLS
支付集成 易支付(YiPay)接口,可自行扩展其他通道
错误处理 统一异常捕获,开发模式显示详细错误,生产模式显示友好页面,同时支持 AJAX 返回 JSON
Session 原生 PHP Session,不依赖 Redis 等外部服务
每个前台模板(templates/*.php)只负责展示,数据通过 handler 函数返回,做到了简单的逻辑与视图分离,方便会设计前端界面的用户高度自定义。
四、适用场景
个人小说站:功能完整,开箱即用,不需要写代码就能管理几百本小说。
付费阅读站点:VIP + 金币体系可以支撑订阅或章节购买(目前 VIP 控制的是广告可见性,你可在此基础上扩展章节解锁)。
多语言小说站:语言包机制允许快速增加英文、日文等版本。
学习参考:代码结构清晰,没有过度封装,适合 PHP 初学者阅读路由、数据库操作、签到算法等模块。
五、关于性能
章节缓存:章节内容存储在文件系统中,读取速度快,不占用数据库查询。
DiyBlock 缓存:自定义榜单的结果会序列化存入数据库,并在缓存有效期内直接返回,避免每次请求都查表。
数据库索引:主要查询字段(novel_id、user_id、created_at 等)均已建立索引,万级数据下响应在 50ms 以内。
静态资源:CSS、JS、字体文件均使用本地 CDN 路径,支持浏览器缓存。
当然,如果你要面对百万级流量,建议在前面加一层 Redis 或者使用 CDN 加速封面图片,系统本身预留了扩展空间。
六、安装与使用
上传所有文件到网站根目录,确保 data/ 目录可写。
访问 http://你的域名/install.php(安装文件不在当前提供的代码中,需另外准备)。
填写数据库信息和管理员账号,完成安装后删除 install.php。
后台路径:/admin,登录后先配置站点名称、支付参数、SMTP。
添加分类 → 添加小说 → 添加章节,前台即可访问。
注意:支付功能需要先注册易支付商户,获取 API 地址、PID 和 KEY。
七、后续计划
我自己还在用的过程中不断优化,近期打算加入:
章节购买(金币解锁)
更细粒度的权限控制(普通用户/VIP/管理员)
集成更多支付通道(微信 Native、支付宝当面付)
增加小说导入导出(CSV 或打包下载)
如果你有好的建议,欢迎到官网或者 QQ 群交流。
程序名称:EnovelCms
当前版本:v1.0
作者:文煞
官网:https://www.wszzw.cn/
技术支持:https://www.wslogs.cn/
QQ 交流群:162244086















网友评论