关于wecenter 3.1.9 验证码不显示的问题的解决方法
如果你全新安装Wecenter出现以下情况:
一、登录后台,验证码不显示
二、新用户注册界面,验证码不显示
三、直接在地址栏打开验证码,链接能打开,但显示为乱码
并且你的php已经支持GD库,或者已经安装过imagemagic,
那么原因就是header头信息不正确,让浏览器认为这是一个html页面,而不是一张png图片,从而不能正常显示图片
解决方法如下:
修改文件 \system\core\captcha.php
在
generate() 的 HTTP::no_cache_header();
后加一行:
header('Content-Type: image/png; charset=UTF-8');
public function generate() { $this->captcha->generate(); HTTP::no_cache_header(); header('Content-Type: image/png; charset=UTF-8'); readfile($this->captcha->getImgDir() . $this->captcha->getId() . $this->captcha->getSuffix()); die; }修改后,效果如下: 单独打开验证码链接如:http://wenda.wecenter.com/?/account/captcha/ 注册和登录界面将正常显示图片: 这个问题在IIS服务器上没有发现,IIS能自动返回正常的图片,而使用nginx的机器上而出现上述问题
2018-02-26 17:26
2018-02-26 17:25
2018-02-25 13:28
2017-04-23 08:28
2017-04-09 20:07
2017-04-08 17:28
2017-04-05 08:50
2017-04-03 20:38