phpcms修改上传文件类型限制-1

在使用PHPCMS时,如果需要上传特定类型的文件(如SVG、MP4、DOCX等),可能会遇到上传失败的情况,这通常是由于系统默认的上传文件类型限制所致。要解决这个问题,需修改相关配置以允许更多文件类型。

1. 修改后台上传文件类型设置

登录PHPCMS后台,进入“后台管理” → “系统” → “附件管理” → “附件类型管理”,在这里可以看到当前允许上传的文件类型列表。

可以根据需要添加新的文件扩展名,例如:

图片类:svg, webp 视频类:mp4, avi, mov 文档类:docx, xlsx, pptx, pdf

找到对应分组或新建分组,将扩展名加入,并设置允许上传的大小限制。

立即学习“PHP免费学习笔记(深入)”;

2. 修改PHP配置中的上传限制

确保服务器PHP配置支持大文件及指定类型上传:

检查 php.ini 文件中以下参数:upload_max_filesize:如设为 50M post_max_size:应大于 upload_max_filesize max_execution_time:上传大文件时建议调高

修改后重启Web服务(如Apache或Nginx)使配置生效。

3. 修改PHPCMS代码中的文件类型过滤

PHPCMS在代码层也有文件类型检查,主要位于:

/phpcms/libs/functions/global.func.php

查找函数 check_extension() 或类似处理上传校验的部分,确认是否对扩展名做了硬编码限制。

例如,若发现以下代码:

// 允许的扩展名列表

$allow_ext = array(‘jpg’,’jpeg’,’gif’,’png’,’bmp’);

可手动添加所需类型,如:

$allow_ext = array(‘jpg’,’jpeg’,’gif’,’png’,’bmp’,’svg’,’mp4′,’docx’,’xlsx’);

4. 检查模块上传逻辑(如内容模型、会员中心)

某些模块(如文章附件、会员头像)可能有独立的上传限制,需查看对应控制器或模板中的上传调用。

例如在 content.php 或 upload.php 中查找上传逻辑,确认是否传入了受限的 $ext 参数。

可适当调整调用参数或增加白名单。

基本上就这些。修改后建议测试上传各类文件,确保功能正常且无安全风险。注意不要开放可执行文件(如php、exe)上传权限,避免带来安全隐患。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。