安装体检:修正 fileinfo 说明(只影响本机存储模式)
原先写「上传校验会更严格」是不准确的:OSS 存储模式下,附件校验走对象存储 返回的 Content-Type(lib/attach.php 的 oss 分支),根本不调用 finfo。真正用到 fileinfo 的只有本机存储分支(lib/attach.php 的 local 分支、media.php)和 media.php 的本机附件 MIME 探测。 改动: - install.php 体检项说明改为「按文件内容识别附件类型(仅本机存储模式用得上)」, 缺失文案补上「不影响安装」,补救提示写清 OSS 模式以对象存储返回的类型为准、 与本扩展无关,避免管理员误以为装个扩展就补了个安全缺口。 - README 同步区分两种存储模式;补充两点排查经验: 面板显示「有」不等于运行中的进程已加载,要看 php.ini 里的 extension 行; 且改完 ini 必须重启/重载 PHP-FPM 才生效(reload 即可,不必 restart)。 验证:php -l 双版本通过;安装向导 60/60、主回归 25/25、PHP 8.5 兼容 19/19; 线上部署 17/17,6 个文件 md5 逐个一致,冒烟全绿。
This commit is contained in:
@@ -56,9 +56,13 @@ feedback/
|
||||
2. 确认该站点使用的 PHP 版本 **≥ 7.4**(推荐 8.1~8.5;**8.5 已逐项实测,无弃用告警**),并已启用扩展:
|
||||
**pdo_sqlite、sqlite3、openssl、mbstring**(宝塔默认均已有;在「软件商店 → PHP → 安装扩展」可查看)。
|
||||
**curl 为可选**:有则优先用它和 OSS 通信,没有会自动退回 PHP 内置的流式请求,功能不受影响。
|
||||
**fileinfo 为推荐**:开启后上传时按文件**真实内容**判断类型(`finfo`);
|
||||
没有也能正常用,但类型校验会退化为「扩展名 + 浏览器声明的 MIME」。
|
||||
**fileinfo 为推荐**:**本机存储模式**下,上传时按文件**真实内容**判断类型(`finfo`);
|
||||
没有也能正常用,但该模式下的类型校验会退化为「扩展名 + 浏览器声明的 MIME」。
|
||||
注意:**OSS 存储模式**的类型判定走对象存储返回的 `Content-Type`,不经过 `finfo`,
|
||||
所以这个扩展只影响本机存储。
|
||||
⚠️ 新装一套 PHP(尤其宝塔里的 8.5)时 `fileinfo` 常常**默认没开**,从旧版本切过来要顺手检查一次。
|
||||
面板上显示"有"不等于已在运行中的进程里加载 —— 要看 `php.ini` 里的 `extension=` 行,
|
||||
而且**改完 ini 必须重启/重载 PHP-FPM** 才会生效(reload 即可,不必 restart)。
|
||||
3. 给数据库目录写权限(宝塔一般已允许):
|
||||
```bash
|
||||
chown -R www:www /www/wwwroot/你的域名/feedback
|
||||
|
||||
Reference in New Issue
Block a user