当前位置:首页 > 技术分享 > 详情
sousuo
sousuo

织梦后台验证码不显示,永易搜建站的解决方案大全来了

上传时间:2020-10-29            浏览次数:91

织梦后台验证码不显示,是什么问题呢?这两天有个客户网站要搬迁到我们公司来维护,因为以前的维护单位做的不行,服务器速度特别慢而且应该服务各方面也不好(猜测的,因为要个程序客户都要了好几天)。

搬迁到我们服务器之后就遇到一个问题,网站后台验证码不显示,看了网上不少解决方案,都不行。最后排查程序发现有两个文件末尾有空行,如下图所示:

把空行删除,于是就好了!

永易搜建站猜测:应该是以前程序被黑过,维护单位处理的时候只是删除了被黑的代码,留下了两个空行。

验证码输出的地方,前方是不能有任何空行或者其他代码的。

附其他情况下的解决方案:

问题一:首先先确定php配置环境没问题,如果一个服务器有的网站显示验证码有的不显示,可以排除运行环境的问题;出现这种情况有可能是:可能是php中GB库没有开启。

解决方法:打开php.ini找到extension=php_gd2.dll去掉前面的#;然后重启服务。下个探针或者用<?php phpinfo() ?>看下是否开启GB库;

问题二:如果网站编码是utf-8的,有可能是bom头的问题,GBK编码的网站不会出现这种情况。

解决方法:使用非windows自带文本编辑器,推荐emeditor,打开下面三个文件,common.php,vdimgck.php和data/safe/inc_safe_config.php文件,然后找到右下角,如果是带签名的话,保存为不带签名的;检查也可以批量去掉下BOM头;

问题三:文件丢失 或者 权限不够

解决方法:织梦5.6,5.7的话,看下Include/vdimgck.php,Include/data/words/words.txt这个两个文件是否丢失,看是否是写入权限,common.phpdata/safe/inc_safe_config.php权限。

问题四:验证码输入正确但是登陆不进去

解决方法:删除data/session下的所有session文件记录,然后刷新页面重新登陆

问题五:上面的方法都试了不行 只能去掉验证码

解决方法:

方法1:找到/data/safe/inc_safe_config.php 去掉6即可,6控制后台登陆验证码,7控制自定义表单提交验证码; 

方法2:打开dede/login.php文件找到

 if(($validate=='' || $validate != $svali) && preg_match("/6/",$safe_gdopen)){

         ResetVdValue();

         ShowMsg('验证码不正确!','login.php',0,1000);

         exit;

}

第一行替换为   if(false){

好 问题解决 不输验证码后台直接进去

去掉验证码显示的错误图片:

打开dede/templets/login.htm文件 去掉下面代码
 <li><span>验证码:</span>
           <input name="validate" type="text" id="vdcode" style='width:50px;text-transform:uppercase;' />
           <img id="vdimgck" src="../include/vdimgck.php" alt="看不清?点击更换" align="absmiddle" style="cursor:pointer" onclick="this.src=this.src+'?'" />
 </li>

继续浏览有关 永易搜 建站 的文章
永易搜建站用技术和实力说话
0371-56789390
公司地址

郑州市花园路东风路向西300路南弘熹台22层

联系我们