刚转移一个用dedecms v5.7做的网站,使用utf8编码,发现登录后台时验证码不显示,无法登陆后台。在网上找了很多的方法,但试了之后都没有成功,最后还是自己找到原因解决了。现将dedecms后台验证码不显示的几乎所有原因及解放方法总结如下。
1、与网页系统缓存或浏览器cookies相关的原因。
这种可能性最小,清除浏览器的cookies和离线文件。
2、设置php.ini配置文件,开启GB库支持。
解决方案:找到配置文件:php.ini 把 extension=php_gd.dll 或者是 extension=php_gd2.dll 前门的分号去掉
3、修改DATA\safe\inc_safe_config.php文件,关闭后台登录验证码功能。
具体方法如下:
1.用ftp把网站根目录下的DATA文件夹里的safeinc_safe_config.php这个文件下载到本地。
2.用Dreamweaver(不要用记事本)打开这个文件,找到: $safe_gdopen = ’1,2,3,4,5,6′;这句代码, 这个就是系统哪些地方开启验证码。与[验证码安全设置]界面是一对一的关系把里面的“6”删除了,就可以了。
所以,如果当我们的后台无法登陆,(如果验证码无法正确输入,不支持GB库)的时候,只需要打开datasafeinc_safe_config.php 将$safe_gdopen = ’1,2,3,5,6′; 中的6删除即可。不必去进行繁琐的设置。
4、站点data目录位置变动造成验证码不显示,修改include\vdimgck.php文件。
注:DedeCMS v5.7 sp1不需要以上操作,这一点官方已升级调整过了。如果按照这篇文档里操作之后,验证码不显示,说明有一个地方,你还没有调整:打开include下的vdimgck.php,将代码中的data路径做相应的调整。
5、utf8编码的数据库连接文件common.inc.php或DATA\safe\inc_safe_config.php文件包含BOM标记,存在兼容性问题。
使用utf8编码的网站配置文件common.inc.php或DATA\safe\inc_safe_config.php文件如果用Windows的记事本打开修改过,会自动加上BOM标记,这样可能会出现一些兼容问题,改用Dreamweaver打开,察看页面属性,把“包括Unicode签名BOM”前面的勾去掉。再重新保存。
4、站点data目录权限为只读造成验证码不显示。
老版本的data目录权限设置为只读可能登录后台会提示验证码错误,需要点击“权限”单独将data设置为完全控制(可读可写)权限。
以上几种是DEDE后台验证码不显示的几种处理方法。可能是最全的。希望对你有所有助。
|
|