将阿帕奇(Apache)服务器上的dedecms(织梦内容管理系统)网站上传到虚拟空间或云服务器空间,是一个涉及文件传输、数据库迁移、环境配置的系统性过程,整个过程需要细致操作,确保文件完整性、数据库正确性及服务器环境兼容性,以下为详细步骤和注意事项。

准备工作:环境确认与文件整理
在开始上传前,需先确认目标空间的环境是否满足dedecms运行要求,并整理本地网站文件。
检查目标空间环境
dedecms基于PHP+MySQL开发,需确保目标空间满足以下基础条件:
- Web服务器:支持Apache(部分空间也支持Nginx,但需确认伪静态规则兼容性);
- PHP版本:建议选择PHP 5.6~7.2(dedecms 5.7版本对PHP 8.0以上支持有限,高版本可能导致功能异常);
- MySQL数据库:版本建议5.1~5.6(部分高版本空间需调整数据库字符集为utf8mb4,避免乱码);
- 其他支持:需开启
fileinfo
、curl
等PHP扩展(dedecms部分功能依赖),并确保空间支持mod_rewrite
伪静态(用于URL优化)。
可通过空间商提供的“环境检测工具”或本地创建phpinfo.php
为<?php phpinfo(); ?>
)上传到空间查看环境详情。
本地文件整理
- dedecms程序文件:登录本地Apache网站根目录(通常为
htdocs
或www
),包含所有dedecms核心文件及自定义模板、插件等; - 数据库文件:通过dedecms后台“系统”-“数据库备份/恢复”功能,导出本地数据库(.sql文件),或通过phpMyAdmin直接导出;
- 附件及资源文件:确认
/uploads/
、/special/
等目录是否包含用户上传的附件、图片等资源,需一并上传。
上传网站文件到空间
文件上传是核心步骤,建议使用FTP(文件传输协议)工具,如FileZilla、FlashFXP等,操作流程如下:

获取FTP连接信息
从空间商控制台获取FTP登录参数,包括:
- 主机地址(如
ftp.yourdomain.com
); - 用户名(通常为空间ID或自定义账户);
- 密码(初始密码或自行设置的FTP密码);
- 端口(默认21,部分空间需使用加密端口如21)。
连接FTP并上传文件
- 打开FTP工具,输入连接信息登录,进入空间根目录(通常为或
/wwwroot/
); - 将本地dedecms程序文件(除
data
目录外的所有文件及文件夹)拖拽上传到空间根目录,注意保持目录结构一致(如/dede/
、/include/
等子文件夹需同步上传); - 上传
/data/
目录时,需先在本地将config.cache.inc.php
、common.inc.php
等配置文件权限设置为“仅可读”(避免上传后因权限问题无法修改),再上传至空间; - 若网站较大(附件多),可分批上传,或通过FTP的“同步文件夹”功能减少重复操作。
设置文件及目录权限
上传完成后,需通过FTP工具或空间“文件管理器”设置关键目录及文件权限,确保dedecms可正常读写:
- 目录权限:
/data/
、/uploads/
、/templets/
、/special/
等需写入数据的目录,权限设置为755
或777
(777
存在安全风险,建议优先755
,若无法写入再尝试777
); - 文件权限:
.php
文件权限设置为644
,配置文件(如data/common.inc.php
)可设置为604
或640
,避免直接可执行。
注:权限设置可通过FTP工具右键“文件属性”修改,或在空间“文件管理器”中选中文件/文件夹点击“权限设置”。
迁移数据库并配置连接
数据库是dedecms的核心,需将本地数据库导入空间,并修改程序连接参数。
在空间创建数据库
登录空间商控制台,进入“数据库管理”模块:
- 创建新数据库(数据库名建议使用“前缀_数据库名”,如
dede_main
); - 设置数据库用户名及密码(需与本地数据库用户权限一致,确保拥有“增删改查”权限);
- 记录数据库名、用户名、密码及数据库地址(部分空间为独立IP,部分为本地
localhost
)。
导入数据库文件
- 方法一:通过空间“数据库管理”的“导入”功能,选择本地导出的
.sql
文件上传并导入(适合小体积数据库,通常小于50MB); - 方法二:若空间未提供导入功能,或数据库较大,可使用phpMyAdmin(空间通常预装):登录phpMyAdmin,选择对应数据库,点击“导入”,上传
.sql
文件。
注:导入前需确保数据库字符集与本地一致(建议utf8mb4_general_ci
),若出现乱码,可在导入时修改字符集设置。
修改数据库连接配置
上传的dedecms程序默认连接本地数据库,需修改配置文件以适配空间数据库:
- 用FTP工具打开空间根目录下的
/data/common.inc.php
文件(dedecms核心配置文件); - 修改以下关键参数:
$cfg_dbhost = 'localhost'; // 数据库地址,若空间为独立IP则填写IP $cfg_dbname = 'dede_main'; // 数据库名 $cfg_dbuser = 'dede_user'; // 数据库用户名 $cfg_dbpwd = 'your_password'; // 数据库密码 $cfg_dbprefix = 'dede_'; // 数据库表前缀(需与本地一致,若修改过需同步)
- 保存文件并上传覆盖,注意保持文件权限为604或640。
配置伪静态及网站调试
完成文件和数据库上传后,需配置伪静态规则并测试网站功能。
配置Apache伪静态
dedecms默认启用URL静态化,需在空间开启伪静态支持:
- 登录空间控制台,进入“伪静态设置”模块;
- 选择“dedecms”系统内置规则(或手动添加规则,规则内容可从dedecms官方文档获取);
- 保存规则并重启Web服务。
注:若空间为Nginx,需修改Nginx伪静态规则,与Apache规则不同,需单独配置。
测试网站功能
通过浏览器访问域名,检查以下内容:
- 网站首页:是否正常显示,样式是否错乱(检查
/templets/
目录下模板文件是否上传完整); - 后台登录:访问
/dede/login.php
,输入用户名密码登录,检查是否提示“数据库连接错误”(若提示,重新确认common.inc.php
中的数据库参数); - 功能模块:测试文章发布、图片上传、评论等功能,确保
/uploads/
目录可正常写入; - 安全设置:进入dedecms后台“系统”-“系统设置”-“安全设置”,关闭“后台目录访问”(如将
/dede/
重命名为自定义名称),并设置后台登录验证码。
常见问题及注意事项
-
上传后网站空白或报错:
- 检查
/data/
目录权限是否为755,common.inc.php
权限是否为604; - 确认PHP版本兼容性,若使用PHP 8.0以上,可尝试切换到PHP 7.2;
- 查看空间错误日志(通过控制台“日志管理”获取),定位具体报错原因(如“Fatal error: Call to undefined function”需开启对应PHP扩展)。
- 检查
-
数据库连接失败:
- 确认
$cfg_dbhost
是否为localhost
(部分空间需填写数据库IP); - 检查数据库用户名、密码及数据库名是否正确,区分大小写;
- 确认数据库用户是否有当前数据库的操作权限(空间商控制台可重置权限)。
- 确认
-
图片/附件无法显示:
- 检查
/uploads/
目录权限是否可写; - 进入后台“系统”-“核心设置”,确认“附件目录”路径是否正确(默认为
/uploads/
); - 若使用HTTPS,需检查“附件根目录”是否包含
http://
,修改为https://
。
- 检查
相关问答FAQs
Q1:上传dedecms后,后台登录提示“验证码错误”怎么办?
A:首先检查/data/
目录是否可写(验证码码值存储在data/vdcode.php
文件中);若目录权限正常,可尝试在后台“系统”-“系统设置”-“验证码安全设置”中关闭“后台登录验证码”,或重新生成验证码文件,若仍无法解决,可能是PHP缺少GD
扩展,需联系空间商开启。
Q2:dedecms上传到空间后,文章内容中的图片路径不显示,显示为“/uploads/allimg/”但无法访问?
A:该问题通常因“附件根目录”配置错误导致,登录dedecms后台,进入“系统”-“核心设置”,找到“附件目录设置”,将“附件根目录”修改为“网站根目录(/)”,并保存,之后重新上传图片,路径会自动修正为绝对路径,确保可通过域名正常访问。