赞片CMS.env配置
照着做完,你的赞片CMS 就能正确读取数据库、时区和调试开关,网站不再报「数据库连接失败」或白屏。
第一步:先确认你的版本到底吃不吃 .env
这一步要搞清楚你的赞片CMS 是 ThinkPHP 5 内核(支持 .env)还是老版本(只认 data/config.php),否则改半天没反应。
打开网站根目录,看有没有 think、application/、vendor/ 这几个东西,同时看根目录有没有 .env 或 .env.example。
- 有
.env.example:直接用它改,别自己从零写,省得漏键名。 - 只有
data/config.php、application/database.php:说明是老三版内核,改这两个文件,.env写了也无效。
注意:赞片CMS 的配置加载顺序是「.env 覆盖 config 里的默认值」。如果
.env里写了但网站还连老数据库,多半是这个文件根本没被读取——检查文件是不是被存成了env.txt或者env(没点)。
第二步:用宝塔或 SSH 建好 .env 文件
这一步做完,你手上会有一个和网站根目录平级、权限正确的 .env。
宝塔面板路径:网站 → 你的域名 → 根目录 → 文件 → 显示隐藏文件(列表上方那个眼睛图标 / 开关),看不到就是它被隐藏了。没有 .env 就把 .env.example 右键复制一份改名为 .env。
SSH 方式:
cd /www/wwwroot/你的域名
cp .env.example .env # 没有 example 就跳过这行
vi .env
按 i 进入编辑,写完按 Esc,输入 :wq 回车保存。然后给权限:
chown www:www .env
chmod 644 .env
注意:属主必须是跑 PHP 的那个用户(宝塔一般是
www)。属主是root且权限 600,PHP 读不到,表现是配置全部失效但页面不报错,最难查。
第三步:填数据库配置(最核心的一段)
这一步填完,网站的数据库连接就通了。
APP_DEBUG = false
APP_TRACE = false
[APP]
DEFAULT_TIMEZONE = Asia/Shanghai
[DATABASE]
TYPE = mysql
HOSTNAME = 127.0.0.1
DATABASE = zanpian
USERNAME = zanpian
PASSWORD = 你的数据库密码
HOSTPORT = 3306
CHARSET = utf8mb4
PREFIX = zp_
DEBUG = false
HOSTNAME:数据库和网站同机填127.0.0.1,用宝塔的「数据库」面板能看到实际地址。PREFIX:表前缀必须和 phpMyAdmin 里看到的完全一致,多一个下划线都会导致「表不存在」。CHARSET:新装的站用utf8mb4,老站如果原来是utf8,两边要保持一致,别乱换。
注意:密码里带
#、;、=这类字符时,把整段用英文双引号包起来,例如PASSWORD = "ab#123",否则会被当成注释截断。
第四步:调试开关和时区
这一步控制报错显示和时间对不对。
- 本地调试:
APP_DEBUG = true,报错会显示具体文件和行号,方便定位。 - 上线必改:
APP_DEBUG = false。开着它,数据库账号密码会随错误页直接暴露给访客。 DEFAULT_TIMEZONE = Asia/Shanghai,否则采集入库时间会差 8 小时,排行榜、最新更新全乱。
第五步:清缓存让它生效
这一步做完,改动才真正起作用。
.env 改动后框架会缓存配置,必须清一次:
rm -rf /www/wwwroot/你的域名/runtime/*
或者后台 系统 → 系统缓存 → 清除缓存(后台入口一般是域名 + /admin.php)。
第六步:验证
访问首页和后台登录页,能正常打开、后台能登录,就说明数据库通了。再进 后台 → 系统 → 数据库管理,能看到表列表即配置正确。
常见报错对照:
- 「SQLSTATE[HY000] [1045] Access denied」→ 用户名或密码错。
- 「Unknown database」→
DATABASE名字写错,注意不是用户名。 - 页面纯白无提示 → 把
APP_DEBUG临时改成true再看。
小结
- 先确认内核版本,老版本改
data/config.php,新版本才用.env。 .env放在网站根目录,必须是隐藏文件名.env,属主www、权限 644。- 数据库四项关键:
HOSTNAME、DATABASE、USERNAME、PASSWORD,前缀PREFIX必须和实际表一致。 - 上线后
APP_DEBUG一定关掉,改完必须清runtime缓存。 - 时区固定
Asia/Shanghai,避免采集时间错乱。
原文链接:https://www.gj0.com/thread-28.html
转载请注明出处并保留本声明;内容仅代表作者观点,与本站立场无关。若本文涉嫌侵权,请联系本站处理。