核心配置文件:config_base.php
DedeCMS所有核心的上传设置都集中在 /include/config_base.php 文件中,您可以通过修改这个文件来全局控制上传行为。

请务必:
- 修改前备份原文件,以防出错无法恢复。
- 使用专业的代码编辑器(如 VS Code, Sublime Text, Notepad++)打开,避免使用记事本导致编码问题。
以下是 config_base.php 中与上传相关的关键配置项及其说明:
上传目录设置
// 上传目录 $cfg_medias_dir = '/uploads'; // 媒体文件(附件、图片等)上传目录 $cfg_image_dir = '/uploads'; // 图片上传目录 $cfg_soft_dir = '/uploads'; // 软件上传目录 $cfg_other_dir = '/uploads'; // 其他文件上传目录
- 作用:定义不同类型文件上传后存放的根目录,默认是
/uploads。 - 如何更改:您可以将这些路径修改为您想要的,
/uploads/all或/assets。注意:确保您设置的目录存在且具有正确的读写权限(通常是 755 或 777)。
上传文件类型限制
这是最常见的需求,限制用户可以上传的文件后缀名。
// 上传文件类型 $cfg_upload_ext = 'jpg|jpeg|gif|png|bmp'; // 默认允许上传的图片类型 $cfg_mediatype = 'jpg|jpeg|gif|png|bmp|ico'; // 媒体文件类型 $cfg_softtype = 'zip|rar|gz|bz2|iso|dmg|tgz|7z|doc|docx|xls|xlsx|ppt|pptx|pdf|txt|md'; // 软件及其他文件类型
- 作用:通过 分隔的列表来定义允许上传的文件后缀名。
- 如何更改:
- 只允许上传图片:将
$cfg_upload_ext修改为jpg|png。 - 允许上传PDF:在
$cfg_mediatype或$cfg_softtype中添加pdf。 - 禁止上传某些类型:直接从列表中移除即可。
- 只允许上传图片:将
上传文件大小限制
// 上传文件大小限制 $cfg_upload_maxsize = '2048'; // 默认为 2048 KB,即 2MB
- 作用:限制单个文件上传的最大大小,单位是 KB。
- 如何更改:想限制为 10MB,就修改为
10240(10 * 1024)。
上传方式
// 上传方式,1:FTP 0:本地 $cfg_upftp = 0;
- 作用:决定文件是上传到网站服务器本地,还是通过FTP协议上传到另一台FTP服务器。
- 如何更改:
- 本地上传(默认):
$cfg_upftp = 0; - FTP上传:
$cfg_upftp = 1;启用后,还需要在后台的“系统” -> “FTP管理”中配置FTP服务器信息。
- 本地上传(默认):
缩略图设置
// 是否启用远程图片 $cfg_remote_site = 'N'; // N:不启用 Y:启用 // 缩略图默认设置 $cfg_ddimg_width = '250'; // 缩略图默认宽度 $cfg_ddimg_height = '250'; // 缩略图默认高度
- 作用:
$cfg_remote_site用于是否抓取文章内容中的远程图片到本地,缩略图设置影响生成缩略图的默认尺寸。
如何操作:以修改上传目录和文件类型为例
假设您想把上传目录从 /uploads 改为 /myuploads,并且只允许上传 jpg 和 png 格式的图片。

步骤 1:备份文件
复制一份 include/config_base.php 文件,命名为 config_base.php.bak。
步骤 2:编辑配置文件
用编辑器打开 include/config_base.php,找到以下几行:
// --- 修改前 --- $cfg_medias_dir = '/uploads'; $cfg_image_dir = '/uploads'; $cfg_upload_ext = 'jpg|jpeg|gif|png|bmp'; // --- 修改后 --- $cfg_medias_dir = '/myuploads'; $cfg_image_dir = '/myuploads'; $cfg_upload_ext = 'jpg|png';
步骤 3:创建新目录
通过FTP或服务器管理工具(如cPanel,宝塔面板),在您的网站根目录下创建一个名为 myuploads 的文件夹。
步骤 4:设置目录权限
选中 myuploads 文件夹,将其权限设置为 755,如果后台需要自动创建文件夹,可能需要临时设置为 777,上传完成后再改回755。
步骤 5:清空缓存 登录DedeCMS后台,进入“系统” -> “一键更新网站” -> “更新缓存”,点击“开始更新缓存”,确保新配置生效。
当您再次上传图片时,文件就会被保存到 /myuploads 目录下,并且只能选择 .jpg 或 .png 文件。
其他相关修改
修改上传按钮的提示文字
这些文字通常在模板文件中,而不是配置文件里,在发布文章或图集的模板中。
- 文件路径:
/templets/default/目录下的相关模板文件,如article_add.htm(发布文章),album_add.htm(发布图集)。 - :在模板文件中搜索
上传、选择文件等关键词,然后修改对应的HTML文本。
修改上传组件的样式
上传按钮的样式由CSS文件控制。
- 文件路径:
/templets/default/css/目录下的样式文件,如dedecms.css。 - :搜索与上传按钮相关的CSS类,
.btn、.upbtn等,然后修改其background、color、border等属性。
修改“附件”相关的字段名
在DedeCMS中,上传的附件通常存储在 #@__addonarticle (附加表) 或 #@__uploads (主表) 中,字段名通常是 filepath (路径)、filename (文件名)、filesize (大小) 等。通常不建议直接修改这些数据表结构,除非您有非常明确的需求并且了解其后果。
| 修改目标 | 核心文件/位置 | 关键配置项/方法 |
|---|---|---|
| 上传目录 | /include/config_base.php |
$cfg_medias_dir, $cfg_image_dir 等 |
| 文件类型 | /include/config_base.php |
$cfg_upload_ext, $cfg_mediatype 等 |
| 文件大小 | /include/config_base.php |
$cfg_upload_maxsize |
| 上传方式 | /include/config_base.php |
$cfg_upftp (及后台FTP设置) |
| 按钮文字 | /templets/default/ 下的模板文件 |
直接修改HTML文本 |
| 按钮样式 | /templets/default/css/ 下的CSS文件 |
修改CSS类选择器 |
对于绝大多数“更改upload”的需求,直接编辑 config_base.php 文件是最直接、最有效的方法,请牢记操作前备份,操作后清空缓存。
