核心配置文件位置
织梦CMS的数据库配置文件位于:

(图片来源网络,侵删)
/data/common.inc.php
这个文件是织梦CMS系统运行的核心配置文件之一,包含了连接数据库所必需的所有信息。在网站正常运行时,这个文件应该是只读的,并且权限应设置为 644 (rw-r--r--)。
解析
打开 data/common.inc.php 文件,你会看到类似下面的代码(不同版本可能略有差异,但核心内容一致):
<?php //数据库连接信息 $cfg_dbhost = 'localhost'; //数据库服务器 $cfg_dbname = 'dedecmsv57'; //数据库名 $cfg_dbuser = 'root'; //数据库用户名 $cfg_dbpwd = 'your_password'; //数据库密码 $cfg_dbprefix = 'dede_'; //数据表前缀 $cfg_db_language = 'utf8'; //数据库语言版本 //网站路径信息 $cfg_cmspath = '/'; //CMS安装目录 $cfg_userpath = '/member/'; //会员中心目录 ?>
下面我们来逐一解释每个变量的含义:

(图片来源网络,侵删)
数据库连接信息
-
$cfg_dbhost = 'localhost';- 含义:数据库服务器地址。
- 常见值:
localhost:表示数据库和网站程序在同一台服务器上,这是最常见的情况。0.0.1:与localhost相同。- 一个IP地址(如
168.1.100)或一个域名(如db.yourdomain.com):当数据库和网站程序不在同一台服务器时使用。
-
$cfg_dbname = 'dedecmsv57';- 含义:你为织梦CMS创建的数据库名称,这个数据库是在你的MySQL/MariaDB服务器中提前创建好的。
-
$cfg_dbuser = 'root';- 含义:连接数据库所使用的用户名。
root是MySQL的超级管理员用户,通常用于本地开发,在生产环境中,建议创建一个拥有特定权限(如对dedecmsv57数据库的SELECT,INSERT,UPDATE,DELETE权限)的专用用户。
- 含义:连接数据库所使用的用户名。
-
$cfg_dbpwd = 'your_password';
(图片来源网络,侵删)- 含义:对应数据库用户的密码。这是最敏感的信息,请务必设置一个强密码。
-
$cfg_dbprefix = 'dede_';- 含义:数据表前缀。
- 作用:这个前缀用于区分同一数据库中不同应用的数据表,织梦CMS的表名会是
dede_archives(文章表)、dede_arctype(栏目表)等。 - 重要性:如果你想在同一个数据库中安装多个织梦CMS站点,或者安装其他程序(如论坛),修改这个前缀可以有效避免数据表名冲突,在安装织梦时,这是一个可选项。
-
$cfg_db_language = 'utf8';- 含义:数据库的字符集。
- 常见值:
utf8:最常用的字符集,支持全球绝大多数语言,包括中文。强烈推荐使用。gbk:主要用于简体中文环境,现在已较少使用新项目。utf8mb4:utf8的超集,能够支持一些特殊的emoji表情符号,如果你的网站需要支持emoji,可以考虑使用此字符集,但这通常需要在安装时指定,修改此配置可能不够。
网站路径信息
-
$cfg_cmspath = '/';- 含义:织梦CMS系统在网站根目录下的安装路径。
- 常见值:
- 表示网站直接安装在Web服务器的根目录下(如
public_html或www目录),这是最常见的情况。 '/cms/':如果织梦CMS安装在名为cms的子目录下,这里就应填写'/cms/'。
- 表示网站直接安装在Web服务器的根目录下(如
-
$cfg_userpath = '/member/';- 含义:会员中心的访问目录。
- 说明:这个路径通常与
$cfg_cmspath相关,指向会员模块所在的文件夹,一般无需修改。
如何修改配置?
修改前务必备份数据库和整个网站!
- 通过FTP或文件管理器:登录你的服务器,找到
/data/common.inc.php文件。 - 修改权限:为了能保存修改,可能需要先将文件权限临时修改为
666(rw-rw-rw-) 或755(rwxr-xr-x)。修改完成后,务必立即将其改回644(rw-r--r--),以防止安全风险。 - 编辑文件:使用代码编辑器(如 VS Code, Sublime Text, Notepad++)打开文件,修改你需要更改的变量值。
- 保存文件:保存修改。
- 恢复权限:将文件权限改回
644。
强烈推荐使用织梦CMS自带的系统设置来修改部分信息,而不是直接编辑此文件,登录织梦后台,进入“系统” -> “系统基本参数”,在这里可以修改网站名称、关键词、版权信息等,数据库连接信息(主机、用户名、密码等)通常也需要在这里修改,修改后系统会自动更新 common.inc.php 文件。
常见问题与排查
问题1:Call to a member function on a non-object 或 Unable to connect to the database!
- 原因:这通常是数据库连接失败,意味着织梦无法读取
common.inc.php中的配置或无法连接到数据库。 - 排查步骤:
- 检查
$cfg_dbhost,$cfg_dbname,$cfg_dbuser,$cfg_dbpwd是否正确。 - 确认数据库服务器地址是否为
localhost,如果不是,请确认你的数据库服务器的IP和端口是否正确,并且你的网站服务器有权限访问该数据库。 - 确认数据库用户名和密码是否正确。
- 确认数据库名是否存在。
- 检查
data目录的权限是否正确(通常为755),确保Web服务器进程可以读取common.inc.php文件。
- 检查
问题2:网站后台登录后出现空白或乱码
- 原因:这很可能是数据库字符集和网站字符集不匹配。
- 排查步骤:
- 检查
$cfg_db_language是否为utf8。 - 登录数据库管理工具(如 phpMyAdmin),检查你的数据库、数据表以及字段的字符集是否都是
utf8mb4_unicode_ci或utf8_general_ci,如果不是,需要统一修改。 - 检查织梦后台的“系统基本参数”中,核心设置里的“网站编码”是否也为
UTF-8。
- 检查
问题3:想更换数据库,但提示“配置文件只读”
- 原因:这是织梦CMS的一个安全机制,防止直接在后台修改核心配置。
- 解决方案:
- 按照上述“如何修改配置”的方法,通过FTP修改
data/common.inc.php文件。 - 或者,直接修改数据库中的
#@__sysconfig表,这个表存储了后台的“系统基本参数”,找到与数据库相关的记录(varname字段可能是cfg_dbhost,cfg_dbuser等),修改其value字段,这种方法风险较高,不推荐新手操作。
- 按照上述“如何修改配置”的方法,通过FTP修改
安全建议
- 设置严格的文件权限:确保
data目录及其下的所有文件(尤其是common.inc.php)的权限设置正确。data目录建议设为755,common.inc.php设为644。 - 使用专用数据库用户:不要在生产环境中使用
root用户连接数据库,为织梦CMS创建一个独立的、权限受限的数据库用户。 - 定期备份:定期备份你的数据库和网站文件,以防不测。
- 保持更新:及时将织梦CMS更新到最新稳定版本,以修复已知的安全漏洞。
