核心原则:数据表前缀
DedeCMS 在安装时会让你指定一个数据表前缀,默认是 dede_,如果你要安装第二个 DedeCMS,必须给它一个不同的前缀,dede2_、siteb_ 等,这是避免数据冲突最关键的一步。

(图片来源网络,侵删)
详细操作步骤
假设你已经准备好了两个 DedeCMS 的程序文件,并且已经将它们分别上传到你的网站服务器上。
场景设定
- 网站A (主站):
- 域名:
www.example.com - 程序目录:
/wwwroot/site-a/ - 数据库前缀:
dede_(默认)
- 域名:
- 网站B (子站/新站):
- 域名:
blog.example.com - 程序目录:
/wwwroot/site-b/ - 数据库前缀:
myblog_(必须与网站A不同)
- 域名:
第一步:环境准备
-
Web 服务器配置 (虚拟主机/域名绑定)
- 确保你的 Web 服务器(如 Apache 或 Nginx)已经为这两个域名或目录配置好了虚拟主机。
- Apache: 确保开启了
mod_rewrite模块,并配置了.htaccess重写规则。 - Nginx: 确保配置了相应的
rewrite规则,将所有非真实文件请求转发到index.php。 - SSL证书: 如果需要 HTTPS,请确保两个域名都已正确配置 SSL 证书。
-
数据库准备
- 登录你的数据库管理工具,如 phpMyAdmin。
- 方法一 (推荐): 创建一个新数据库
- 为网站A创建一个数据库,
db_example_a。 - 为网站B创建另一个数据库,
db_example_b。 - 优点: 结构清晰,管理方便,一个网站的数据出问题不会影响另一个。
- 为网站A创建一个数据库,
- 方法二: 使用同一个数据库
- 只需创建一个数据库,
db_example。 - 在安装网站A和B时,都连接到这个
db_example数据库,但使用不同的表前缀。 - 注意: 如果一个网站的数据表被误删,会影响另一个网站,不推荐新手使用此方法。
- 只需创建一个数据库,
第二步:安装第一个 DedeCMS (网站A)
这个是标准的安装流程,没有特殊之处。

(图片来源网络,侵删)
- 访问
www.example.com/install(根据你的实际目录调整)。 - 进入安装向导,同意协议。
- 环境检测: 确保服务器环境满足要求(PHP版本、MySQL版本、目录权限等)。
- 安装参数设置:
- 网站名称: 输入网站A的名称。
- 网站首页:
index.php - 管理员账号:
admin(或你自定义的) - 管理员密码: 设置一个强密码。
- 数据库设置:
- 数据库服务器地址:
localhost - 数据库用户名: 你的数据库用户名
- 数据库密码: 你的数据库密码
- 数据库名:
db_example_a(如果你使用方法一) - 数据库前缀: 保持默认
dede_即可。
- 数据库服务器地址:
- 点击“开始安装”,等待安装完成。
- 安装成功后,删除
/install/目录。 - 访问
www.example.com查看网站,并使用管理员账号登录后台。
第三步:安装第二个 DedeCMS (网站B)
这是关键步骤,需要特别注意数据库前缀。
- 访问
blog.example.com/install。 - 同意协议,进入环境检测。
- 安装参数设置:
- 网站名称: 输入网站B的名称。
- 网站首页:
index.php - 管理员账号: 可以和网站A一样,也可以不同(
admin_b)。 - 管理员密码: 设置一个密码。
- 数据库设置:
- 数据库服务器地址:
localhost - 数据库用户名: 你的数据库用户名
- 数据库密码: 你的数据库密码
- 数据库名:
db_example_b(如果你使用方法一) 或db_example(如果你使用方法二) - 数据库前缀: 这是最关键的一步! 必须填写一个与网站A不同的前缀,
myblog_。
- 数据库服务器地址:
- 点击“开始安装”,等待安装完成。
- 安装成功后,删除
/install/目录。 - 访问
blog.example.com查看网站,并使用管理员账号登录后台。
至此,两个 DedeCMS 系统已经成功安装并可以独立运行了。
第四步:重要配置和注意事项
后台登录地址
两个系统的后台登录地址会根据其安装目录自动生成,它们是独立的。
- 网站A后台:
www.example.com/dede/login.php - 网站B后台:
blog.example.com/dede/login.php
数据库管理
- 如果你使用了两个独立数据库:
- 在 phpMyAdmin 中,你会看到两个数据库
db_example_a和db_example_b,里面分别存放着各自的数据表,非常清晰。
- 在 phpMyAdmin 中,你会看到两个数据库
- 如果你使用了一个数据库:
- 在 phpMyAdmin 中,你只会看到一个数据库
db_example,但里面会有两套数据表,一套是dede_开头的,另一套是myblog_开头的,在执行数据库操作(如备份、优化)时要格外小心,确保操作的是正确的表前缀。
- 在 phpMyAdmin 中,你只会看到一个数据库
后台目录安全
为了安全起见,安装完成后,建议修改后台目录名(dede)。

(图片来源网络,侵删)
- 网站A:
- 通过 FTP 或文件管理器,将
/wwwroot/site-a/dede/重命名为你自定义的名字,admin-a。 - 修改
/wwwroot/site-a/include/config_base.php文件,找到$cfg_cmspath和$cfg_admin_dir变量,将$cfg_admin_dir的值改为你的新目录名admin-a。 - 之后,网站A的后台登录地址就变成了
www.example.com/admin-a/login.php。
- 通过 FTP 或文件管理器,将
- 网站B:
用同样的方法修改网站B的后台目录名和配置文件。
共享会员系统(可选)
如果你希望两个网站共享同一个会员系统(即用户在一个网站注册,可以在另一个网站登录),这需要更复杂的配置,通常需要:
- 确保数据库和表前缀: 两个网站必须连接到同一个数据库,并且使用不同的表前缀。
- 同步会员表: 你需要手动同步会员相关的数据表,主要涉及:
dede_member(会员主表) ->myblog_memberdede_member_tj(会员统计表) ->myblog_member_tjdede_member_space(会员空间表) ->myblog_member_space- 以及其他与会员相关的表。
- 修改配置文件: 需要修改第二个网站B的配置文件,使其读取网站A的会员表信息,这通常需要修改
/include/config_base.php和/member/config.php等文件中的表前缀指向,或者通过修改程序代码来实现,有一定风险,不推荐新手操作。
| 操作步骤 | 网站A (主站) | 网站B (新站) | 关键点 |
|---|---|---|---|
| 目录 | /wwwroot/site-a/ |
/wwwroot/site-b/ |
程序文件独立 |
| 数据库 | db_example_a 或 db_example |
db_example_b 或 db_example |
建议独立,清晰管理 |
| 安装 | 访问 site-a/install |
访问 site-b/install |
按向导操作 |
| 表前缀 | dede_ (默认) |
myblog_ (自定义) |
核心!必须不同 |
| 后台 | site-a/dede/ |
site-b/dede/ |
独立管理 |
遵循以上步骤,你就可以顺利地在同一个数据库服务器上安装并运行两个 DedeCMS 系统了。不同的数据表前缀是成功的基石。
