• v1.3.35 ace8dc8b5c

    zhangpu released this 2026-06-01 14:09:29 +08:00 | -2 commits to main since this release

    TPanel v1.3.35 发布说明

    🎉 新增:文件管理 - 一键修改权限

    之前后端 API 早就在了(/api/files/chmod),但前端没接按钮。现在补上。

    使用方法

    1. 打开 TPanel → 文件管理 → 选择站点
    2. 在任意文件/目录行末,点 🔐 按钮(位于 ✏️ 编辑和 🗑️ 删除之间)
    3. 弹窗显示当前权限 + 6 个常用预设 + 自定义输入
    4. 选择/输入权限值 → 点「应用」

    支持的权限值(白名单,后端强制)

    值 含义 适用场景
    755 rwxr-xr-x 目录(推荐)
    644 rw-r--r-- 静态文件、网页文件
    600 rw------- 配置文件(仅所有者可读写)
    700 rwx------ 脚本/可执行文件
    775 rwxrwxr-x 组内共享
    664 rw-rw-r-- 组内可写文件

    ⚠️ 不允许 777(世界可写) — 后端白名单制,故意禁止。
    如确需 777,可联系作者加白。

    实时预览

    输入 755 时显示:755 = rwxr-xr-x (7=所有者 7=组 7=公共)
    输入错误值时红色提示。

    适用场景

    • 装 zblog / wordpress / typecho 时 zb_users/c_option.php 写不进
    • 装 ownCloud / NextCloud 需要 755 目录权限
    • 自定义脚本需要 700 防止他人读
    • 任何"SSH 进去手动 chmod"的活,现在 TPanel 点一下就行

    🔧 改动范围

    只改了一个文件:

    frontend/index.html   +187 行(弹窗 DOM + 5 个 JS 函数)
    

    后端 backend/main.py + backend/file_manager.py 完全没动(chmod API 早就在了)。


    📦 文件清单

    • tpanel-v1.3.35-source.zip (68KB) — 完整源码包
    • install.sh (16KB) — 一键安装脚本(v1.3.30 起未变,沿用)
    • 本文档

    🚀 升级方法

    # 1. 备份
    cd /opt/tpanel
    cp frontend/index.html frontend/index.html.bak.v1334
    
    # 2. 解压新源码
    unzip -o tpanel-v1.3.35-source.zip
    cp tpanel-v1.3.34-pkg/frontend/index.html frontend/index.html
    chown tpanel:tpanel frontend/index.html
    
    # 3. 重启服务
    systemctl restart tpanel
    
    # 4. 浏览器 Ctrl+Shift+R 硬刷
    

    ⚠️ 安全说明

    • 后端权限白名单制,777 故意禁止(防止误操作把网站目录设成世界可写)
    • 路径限制:realpath 必须以 /opt/tpanel/sites 开头(chmod_file 函数里写死)
    • 仍需登录认证:@require_auth 装饰器
    • 前端弹窗不影响其他用户

    🐛 已知问题

    无。本次只改前端,没碰后端/数据库/Nginx。


    📝 完整版本历史

    • v1.3.34 (2026-06-10): phpMyAdmin 自动登录 + 数据库密码修改 + /pma/ 路径
    • v1.3.33: sudo NOPASSWD 动态路径探测 + install-test 自检
    • v1.3.32: SSE 连接断开修复(Nginx 1800s timeout)
    • v1.3.30: ...
    • v1.3.35 (2026-06-11): 文件管理权限调整按钮 ⬅️ 当前
    Downloads