您现在的位置是:探索 >>正文
phpcms数据库配置文件
探索86人已围观
简介 PHPCMS的数据库配置文件藏在caches/configs/database.php里。你要是用过PHPCMS,肯定知道这文件有多重要——网站能跑全靠它撑着。我见过不少新手,一上来就改数据库密码, ...
PHPCMS的数据数据库配置文件藏在caches/configs/database.php里。你要是库配用过PHPCMS,肯定知道这文件有多重要——网站能跑全靠它撑着。置文我见过不少新手,数据一上来就改数据库密码,库配结果忘了同步改这个文件,置文网站直接白屏,数据后台都进不去。库配
打开这个文件,置文结构其实挺直白的数据。一个数组,库配里面装着数据库的置文主机、端口、数据用户名、库配密码、置文库名这些基本信息。默认配置长这样:
return array ( 'host' => 'localhost', 'port' => '3306', 'dbname' => 'phpcms', 'username' => 'root', 'password' => '', 'charset' => 'utf8', 'prefix' => 'phpcms_', ); 看着简单吧?但有几个坑得注意。第一,host别老写localhost。我见过一台服务器上跑着好几个PHP环境,数据库走的是Unix socket,这时候你填localhost可能连不上,得填127.0.0.1或者具体的socket路径。第二,prefix这个表前缀,你要是改了,那所有SQL查询都得跟着变,PHPCMS的模型层会自动处理,但你手动写SQL的时候容易漏。
还有charset。默认utf8没问题,但有些老项目用的gbk,你要是混了,页面乱码不说,写入数据库的中文直接变问号。我上次帮人排查一个帖子乱码问题,查了半天,最后发现是配置文件里charset写成了utf8mb4,而数据库表还是utf8——这俩不完全兼容,尤其遇到生僻字的时候。
这个文件最烦人的一点是,它不支持环境变量。你在开发环境、测试环境、生产环境之间切换,得手动改这个文件。我习惯写个脚本,根据服务器IP自动替换配置,不然每次上线都提心吊胆。你说PHPCMS都这么多年了,官方也没想着优化这块,真是够呛。
改这个文件之前,记得先备份。别觉得这是废话——我亲眼见过有人用记事本编辑,保存的时候编码选错了,整个文件变成乱码,网站直接崩了。还有,改完配置后,如果PHPCMS开了缓存,你得去caches/目录把编译缓存清掉,不然改了半天,系统用的还是老配置。这个坑我踩过不止一次。
最后说点实用的。你要是数据库密码里有特殊字符,比如@、#、$,不用转义,直接写就行,因为这是PHP数组不是连接字符串。但你要是用PDO或者mysqli自己写连接,那就得小心了。还有,这个文件默认权限是644,你要是放在共享主机上,最好改成600,不然别人读到你数据库密码就麻烦了。别问我怎么知道的。
Tags:
相关文章
奇趣在线人数统计漏洞
探索深夜两点,我盯着后台监控面板上那个刺眼的数字——在线人数:1,847,392。这数字太假了。上个月同时段峰值才六万人,今天服务器负载曲线平坦得像死人的心电图,哪来的一百八十万活人? 做社区运营第五年, ...
【探索】
阅读更多网页小偷
探索我盯着浏览器右下角的网络面板看了三分钟,那个叫“session.js”的文件被下载了七次。每次页面刷新,它都会准时出现,像一只准时来蹭饭的流浪猫。这不对劲。 我打开这个JS文件,代码被压缩成一行,密密 ...
【探索】
阅读更多渗透国家
探索凌晨三点,我盯着屏幕上的Wireshark数据流,一个来自北非的IP正以每秒47次的频率扫描某省级政务云的443端口。这不是电影桥段,而是上个月真实发生在某省应急演练中的一幕——当然,攻击方是我们自己 ...
【探索】
阅读更多