核心思想
在二级目录安装 DedeCMS,本质上是在你的主域名(www.yourdomain.com)下的一个子文件夹(blog)里运行一个独立的 DedeCMS 系统,这个系统拥有自己独立的数据库、后台和前台,但会与主域名共享一些配置,index.php 和 .htaccess。
第一步:环境准备
在开始之前,请确保你的服务器环境满足 DedeCMS 的基本要求:
- Web 服务器:Apache (推荐) 或 Nginx。
- PHP 版本:建议 PHP 7.1 - 7.4,DedeCMS 5.7 对 PHP 8.x 的支持有限,可能需要额外配置。
- MySQL/MariaDB 版本:5.0 或更高版本。
- FTP/SFTP 客户端:用于上传和管理文件。
第二步:上传安装文件
这是最关键的一步,请务必仔细操作。
-
下载 DedeCMS:从 DedeCMS 官网下载最新版本的安装包(
dedecms-v5.7-sp2-full.zip)。 -
解压安装包:在本地电脑上解压下载的 ZIP 文件,你会看到一个名为
dede的文件夹,里面包含了 DedeCMS 的所有源码。 -
选择正确的文件上传:
-
方法一(推荐):直接上传
dede文件夹- 使用 FTP 工具连接到你的服务器。
- 进入网站的根目录(通常是
public_html或www)。 - 将本地解压后的
dede文件夹,整体上传到服务器的根目录下。 - 上传完成后,你的网站结构会是
www.yourdomain.com/dede/。
-
只上传必要文件
- 将解压后的
dede文件夹中的所有文件和文件夹,直接移动到你的二级目录文件夹中,如果你还没有创建二级目录,需要先在根目录下创建一个,blog,然后将所有文件移动进去,最终路径是www.yourdomain.com/blog/。
- 将解压后的
注意:我们以方法一为例,安装目录为
/dede/。 -
第三步:修改核心配置文件
这是实现二级目录安装的核心,你需要修改 DedeCMS 的两个核心配置文件,告诉它你的网站地址是什么。
-
修改
/dede/include/config_base.php-
通过 FTP 打开
dede/include/config_base.php文件。 -
找到
$cfg_cmspath这个变量。 -
将它的值修改为你的二级目录地址。
// 原始值可能是 / 或留空 // $cfg_cmspath = '/'; // 修改为你的二级目录 $cfg_cmspath = '/dede';
-
-
修改
/dede/include/config_update.php-
同样,用 FTP 打开
dede/include/config_update.php文件。 -
找到
$cfg_cmspath这个变量。 -
同样,将它修改为你的二级目录地址。
// 原始值可能是 / 或留空 // $cfg_cmspath = '/'; // 修改为你的二级目录 $cfg_cmspath = '/dede';
-
为什么修改这两个文件?
这两个文件是 DedeCMS 的基础配置文件,很多内部程序和路径依赖 $cfg_cmspath 来定位网站根目录,提前修改它们,可以避免后续安装和运行中出现大量路径错误。
第四步:设置目录权限
为了安装程序能够正常写入配置文件,你需要给 DedeCMS 的几个关键目录设置可写权限(通常是 755 或 777,但为了安全,推荐 755)。
- 使用 FTP 客户端,选中以下目录,右键 -> “文件权限” -> 设置为 755。
/dede/(整个目录)/dede/data//dede/uploads//dede/templets//dede/include//dede/a/(文章默认生成目录)/dede/special/(专题默认生成目录)
安全警告:安装完成后,请务必将这些目录的权限改回 755,特别是 data 目录,它包含了数据库配置信息,权限过高有安全风险。
第五步:运行安装程序
你可以通过浏览器访问安装程序了。
- 在浏览器地址栏输入:
http://www.yourdomain.com/dede/install/index.php - 你会看到 DedeCMS 的安装欢迎界面,点击“同意”并进入下一步。
- 环境检测:程序会自动检测你的 PHP 和 MySQL 环境确保满足要求,如果提示某个模块未开启(如
pdo_mysql),你需要联系你的主机商或手动在php.ini中开启它。 - 参数配置:
- 网站名称:填写你的网站名称。
- 网站首页:填写你的网站首页地址,格式为
http://www.yourdomain.com/dede/。 - 管理员账号:设置你的后台登录用户名。
- 管理员密码:设置一个强密码。
- 数据库名称:为你这个二级目录网站创建一个独立的数据库。
- 数据库用户名/密码:填写连接该数据库的用户名和密码。
- 开始安装:点击“开始安装”,程序会自动创建数据表并写入初始数据。
- 安装完成:安装成功后,会提示你删除
/install/目录,请立即通过 FTP 删除这个目录,以防止安全漏洞。
第六步:后台访问与最终配置
- 登录后台:在浏览器地址栏输入
http://www.yourdomain.com/dede/login.php,使用你刚才设置的管理员账号和密码登录。 - 修改系统参数:
- 登录后,进入“系统” -> “系统基本参数”。
- 网站首页:再次检查并确认“网站首页”的地址是否正确(
http://www.yourdomain.com/dede/)。 - 网站根目录:在“核心设置”中,找到“网站根目录”,确保它指向你的二级目录(
/dede)。 - 站点根目录:同样,检查并确保路径正确。
第七步:处理伪静态规则
如果你的网站使用了 URL 伪静态(如 /a/123.html),并且主域名下也有其他网站,你需要特别注意。
-
对于 Apache 服务器:
- DedeCMS 会自动在
/dede/目录下生成一个.htaccess文件。 - 请检查这个文件中的
RewriteBase指令,它应该指向你的二级目录。# 在 /dede/.htaccess 文件中 RewriteEngine On RewriteBase /dede <-- 确保这里是 /dede ... - 主域名根目录下的
.htaccess:确保主域名的.htaccess文件规则不会干扰/dede/目录,DedeCMS 的规则已经处理得比较好,但最好检查一下。
- DedeCMS 会自动在
-
对于 Nginx 服务器:
-
你需要在 Nginx 的主配置文件(或站点配置文件)中,为
/dede/目录单独添加一个location块。 -
示例配置:
server { listen 80; server_name www.yourdomain.com; root /path/to/your/website/root; # 处理二级目录 /dede/ location /dede/ { # 将请求指向 /dede 目录 alias /path/to/your/website/root/dede/; # 如果后台登录页面在 /dede/login.php,可以加上 # try_files $uri $uri/ /dede/index.php?$args; # DedeCMS 的伪静态规则 rewrite "^/dede/a/(\d+).html$" /dede/a/index.php?id=$1 last; rewrite "^/dede/a/(\d+)_(\d+).html$" /dede/a/index.php?id=$1&page=$2 last; rewrite "^/dede/a/list-(\d+)-(\d+).html$" /dede/a/list.php?tid=$1&page=$2 last; # ... 其他 DedeCMS 的 rewrite 规则 ... } # 其他主域名的配置... } -
修改完 Nginx 配置后,别忘了执行
nginx -s reload命令重新加载配置。
-
常见问题与解决方案
-
问题1:安装时提示
目录权限不足。- 解决:请返回第四步,确保
/dede/data/、/dede/include/等目录的权限设置为 755 或 777,安装完成后务必改回 755。
- 解决:请返回第四步,确保
-
问题2:网站首页打开是空白,或者样式丢失。
- 解决:这通常是路径问题,请再次检查
config_base.php和config_update.php中的$cfg_cmspath是否正确设置为/dede,检查“系统基本参数”中的“网站首页”和“站点根目录”是否正确。
- 解决:这通常是路径问题,请再次检查
-
问题3:后台无法登录,或者登录后跳转到主域名。
- 解决:99% 的情况是
config_base.php中的$cfg_cmspath设置错误,请仔细核对,确保它指向的是/dede,而不是 或其他路径。
- 解决:99% 的情况是
-
问题4:打开文章页面出现 404 错误。
- 解决:这是伪静态规则问题,请检查第七步,确保你的服务器(Apache 或 Nginx)正确配置了针对
/dede/目录的伪静态规则。
- 解决:这是伪静态规则问题,请检查第七步,确保你的服务器(Apache 或 Nginx)正确配置了针对
在二级目录安装 DedeCMS,成功的关键在于 “路径正确” 和 “权限正确”。
- 上传文件到正确的二级目录。
- 修改核心配置文件 (
config_base.php,config_update.php) 中的$cfg_cmspath。 - 设置正确的目录权限。
- 运行安装程序并删除
/install/目录。 - 配置伪静态规则,特别是 Nginx 用户需要特别注意。
按照以上步骤一步步操作,你就可以成功在二级目录下部署一个独立的 DedeCMS 网站了。
