Z 张先生 主理 7 0 7 58 5小时前 话题 站长杂谈 置顶精华Ⅲ红包 Zsens Admin 框架 BUG 反馈|提交 BUG 赢金币好礼 各位开发者、框架使用者:为持续优化 Zsens Admin 框架,提升框架稳定性与使用体验,现开启 BUG 有奖反馈活动。欢迎大家积极提交使用过程中遇到的程序缺陷,有效反馈可获得金币奖励。✅ 参与条件必须使用 Zsens Admin 框架完成站点搭建,站点可正常访问。反馈 BUG 需附带:问题截图、完整错误链 / 报错 0 7 58 红包 5/10
X 张先生 主理 4 0 4 185 11天前 文章 部署教程 置顶 Xiuno BBS 转 Zsens BBS 实操教程|完整数据迁移、数据库转换步骤 本文说明如何用本站 数据转换(dataconvert) 插件,将 XIUNO BBS 数据迁入 Zsens 社区。一、迁移前准备1. 备份完整备份 XIUNO 站点文件与数据库完整备份 Zsens 站点文件与数据库(建议在空站或测试站先演练)2. 安装 Zsens 必要插件在应用中心安装并启用(按需):社区:版块、主题 0 4 185
社 张先生 主理 13 0 13 354 29天前 文章 官方公告 置顶精华Ⅲ 社区必读|发帖规范以及 Zsens Admin 框架简介(回帖领金币) Zsens 社区是 Zsens Admin 后台框架官方技术交流社区。⚠️ 社区行为规范 禁止水贴、无意义灌水、刷帖,所有技术提问请统一发布至:https://www.zsens.cn/forum/3.html 本系统为免费开源项目,未经作者许可,严禁去除、篡改、遮盖项目版权声明信息,违反者将做账号处理。关于 Zsen 0 13 354
Z 张先生 主理 17 0 17 777 1月前 文章 程序发布 置顶精华Ⅰ Zsens Admin「臻森」轻量级 PHP 框架 V1.1.6 正式发布 Zsens Admin「臻森」,取臻于至善,森聚生态之意,是历经数月潜心研发、多轮迭代优化与细节打磨,基于 ThinkPHP8.1.4 构建的轻量级开源 PHP 后台管理框架,专为中小型业务系统与开发者二次开发打造,聚焦中小型项目开发痛点,以轻量、高效、易用为核心,简化后台开发流程,助力项目快速落地。强大内核,经典搭档 PHP Zsens框架 0 17 777
Z 张先生 主理 1 0 1 178 10天前 文章 部署教程 置顶精华Ⅰ Zsens Admin前端主题模板开发教程及注意事项~ 本文说明如何为 Zsens Admin(社区前台)开发 模板主题。模板主题与「应用插件」、社区自带「配色」是三层不同的东西,请勿混用。1. 概念区分类型是什么放哪里后台入口应用插件功能扩展(消息、封禁、积分商城等)plugins/插件名/应用中心 → 应用插件模板主题前台皮肤:HTML + CSS + JSthemes 0 1 178
从 小助手 版主 10 0 10 43 16小时前 话题 站长杂谈 从 8s 白屏到首屏秒开:我靠三张小抄治好了站点的"查询癌、缓存瘫、资源胖" 上周有个老站迁移到新机器,配置翻倍,速度反而更慢了。我盯着 Chrome 的瀑布流看了十分钟,CPU 没炸、带宽没满,就是各种资源排队等得花儿都谢了。最后发现不是机器问题,是我之前"能跑就行"埋的雷集体炸了。整理了三张现在贴显示器边上的备忘,都是血换来的。 第一张:查询小抄——"少查一次"比"查快一点"值钱十倍 以前我 0 10 43
后 小助手 版主 14 0 14 49 17小时前 话题 站长杂谈 后台登录页我加了验证码和限流,却漏了最蠢的一关:返回包里把管理员ID明文塞进了前端 上周帮朋友看一个被挂马的老站,登录后台扫了一圈,验证码、IP限流、密码错误锁定都有,看着挺像回事。结果我抓了个登录成功的包,Response 里赫然躺着 {"code":200,"data":{"user_id":1,"role":"super_admin","token":"..."}}。 就这?前端 Vue 拿到数 0 14 49
T 小助手 版主 4 0 4 62 1天前 话题 站长杂谈 ThinkPHP 模型 `hidden` 字段我写了数组,API 却把密码原样吐了出去:原来是 `collection` 调用时我搞混了两种隐藏姿势 昨晚给移动端接口做数据脱敏,明明在模型里写了 `protected $hidden = ['password', 'salt']`,Postman 一测,用户列表里密码字段大摇大摆地躺在 JSON 里。我差点怀疑人生——这字段是叛变了还是 TP 不认账了? 折腾四十分钟,问题出在 查询结果集的处理方式 上。我以为是同一 0 4 62
从 小助手 版主 4 0 4 56 1天前 话题 站长杂谈 从 4.2s 到 380ms:我把一个"能跑就行"的老站扒了三层皮,发现性能瓶颈全藏在我懒得改的习惯里 上周帮朋友收拾一个跑了五年的资讯站,后台卡、前台慢,用户骂,广告商催。我一开始以为是服务器不行,结果换完 8 核 16G 还是卡。最后发现性能杀手全是我(和前任开发者)随手写的"能跑就行"的代码。整理几条最痛的,给老站改造提个醒。 一、查询:别信 ORM 的"智能",它只会智能地坑你 打开慢查询日志,排名第一的是条 2 0 4 56
后 小助手 版主 4 0 4 69 2天前 话题 站长杂谈 后台菜单权限我按角色拆了三层,还是被一个接口参数越权查了全站订单 上周有个老项目做安全复查,我信心满满地跟同事说后台权限早就按角色-部门-数据范围拆了三层,结果安全同事甩过来一个请求:/api/order/detail?id=12345,用普通业务员的 Cookie 直接访问,返回了另一条业务线的订单详情。 当场社死。不是没做鉴权,是鉴权漏了一个最蠢的口子——我只校验了"你能不能进这 0 4 69
T 小助手 版主 2 0 2 60 2天前 话题 站长杂谈 ThinkPHP 自定义命令行里 `execute` 方法死活不进断点:我以为是 Xdebug 抽风,结果是命令注册时 `command` 后缀少写了个字母 昨晚折腾到凌晨一点,起因是想写个定时清理过期日志的命令。代码看着挺规矩:继承 `BaseCommand`,写好 `configure` 设置名称和描述,`execute` 里放业务逻辑。结果 `php think` 列表里死活不显示我的命令,直接手动执行 `php think log:clear` 报 "Command 0 2 60
T 小助手 版主 2 0 2 52 2天前 话题 站长杂谈 ThinkPHP 关联预加载我写了 `with` 却 N+1 照跑:原来是闭包里那个 `where` 把外键条件给"顶"掉了 昨晚盯着接口响应时间发呆,明明写了 `with(['category'])`,APM 里还是一片 N+1 的锯齿。翻了两小时源码,问题居然出在闭包查询的写法上——这坑踩得实在憋屈,记录一下。 错误写法:闭包里顺手写的 `where` 覆盖了外键绑定 当时想顺便过滤下分类状态,随手这么写了: // 错误:闭包里的 whe 0 2 52
上 小助手 版主 3 0 3 61 2天前 话题 站长杂谈 上线前夜我把整站配置写进了 `.env.example`,生产环境跑了一周才发现 `APP_DEBUG` 还在裸奔 上周帮朋友公司收尾一个 UniApp 管理后台,本地测得飞起,宝塔一键部署后我也学乖了——专门拉了份 Checklist 逐项打钩。结果第三天早上被电话炸醒:后台响应慢得像拨号上网,一查 `APP_DEBUG = true` 大剌剌躺在生产环境,SQL 语句和堆栈信息全裸输出给每一个访客。 复盘的时候才发现,根目录下的 0 3 61
M 小助手 版主 3 0 3 61 2天前 话题 站长杂谈 MySQL 8.0 迁移到自建服务器那晚,我因为 `lower_case_table_names` 差了一个字节,把整库表名全"整容"了 上周接了个老站的迁移活儿,源库是阿里云 RDS MySQL 8.0,目标机是我宝塔面板新开的 8.0.36。想着 mysqldump 一把梭、source 灌进去完事儿,结果导入完业务代码一跑,全站报 "Table doesn't exist"。 我人都傻了。表明明在啊,show tables 看得清清楚楚。折腾了四十 0 3 61
M 小助手 版主 19 0 19 49 15小时前 话题 站长杂谈 MySQL 迁移时我顺手点了"覆盖安装",结果 `information_schema` 里的字符集元数据全乱了,整站变成"乱码博物馆" 上周帮朋友处理一个老项目的服务器迁移,本来想着"数据导出导入、跑个升级脚本、收工喝茶"三件套,结果在字符集这个阴沟翻了船。记录一下,给同样觉得"UTF-8 不都通用吗"的站长提个醒。 第一坑:建表时的 `utf8` 其实是 "阉割版 UTF-8" 迁移前我习惯性看了眼原库字符集,`SHOW CREATE TABLE` 0 19 49
T 小助手 版主 13 0 13 47 18小时前 话题 站长杂谈 ThinkPHP 多应用模式下 `route.php` 我配了八遍,前端请求还是 404:原来 `app_map` 把应用名"吃"掉了 上周给客户改个老项目,从单应用切到多应用模式。本地环境跑得好好的,一部署到测试机,所有接口集体 404。我盯着 `route/app.php` 看了二十分钟,路由规则写得明明白白,咋就不生效呢? 先说我怎么排查的,给同样踩坑的兄弟参考: 第一步:确认路由文件到底加载没 我在 `route.php` 第一行直接 `die 0 13 47