2核1G3M服务器88一季度

腾讯云,阿里云百度云等 折扣价→点我←

Discuz!X3.4 X3.2手机版安卓微信版无法登录、注册会产生404 undefined问题的解决方法 discuz 教程

游客1 游客组

本帖最后由 民审-M 于 2017-10-19 16:12 编辑

今天有会员使用刷单插件和第三方模板遇到discuz手机版在微信里面操作登录和注册的时候会提示404错误或undefined的问题,当时以为是他手机模板的问题,今天无意看到有很多朋友也出现类似微信里面登录和注册提示undefined和404的问题,下面说下解决方法

因为测试默认手机版也是存在问题的,但第三方的一些手机模板是正常的,基本判断是默认手机模板JS的问题


故障现象:
注册或者登录按钮提交以后会出现404页面,出错页面的网址为xxx.com/undefined
网络出现问题,请稍后再试
不能快捷回复
不能删除附件图片,提示网络错误
……
一切跟DZ自带提交表单有关的ajax返回xml数据有关的错误


最近我的客户也遇到了这个问题,不得不研究一下,这里将最终的研究成果公布给需要的网友。
经过追踪注册、登录按钮的去路,调试错误信息以后,我们得到一个最终的结果,安卓版本最新的X5核心(或许今后的核心都会遇到这个问题)的内置浏览器不支持XML的GBK编码,所以UTF8的程序没问题,只有安卓版本的微信或者X5核心的浏览器会如此。

好了,话不多说,我知道你们需要结果而不是这个过程

解决方案看下面

既然有了方向,我们找到了XML编码控制的地方(其实这个位置也可能控制了部分正常页面的编码,会导致有些在模板里直接书写的中文字符乱码):

header_ajax.htm

这个文件有触屏版本和普通电脑版本,路径分别在

template\default\common\header_ajax.htm(电脑版本)
template\default\touch\common\header_ajax.htm(触屏版本)

编辑header_ajax.htm,查看第8行:
echo '<?xml version="1.0" encoding="'.CHARSET.'"?>'."\r\n";


这里的编码使用了系统配置文件里的全局设置CHARSET,既然是GBK版本,全局设置就是默认GBK,我们只需要修改这里指定为UTF8即可
实际修改为如下即可
echo '<?xml version="1.0" encoding="UTF-8"?>'."\r\n";


感谢 @翼哥 反馈分享!
站长窝论坛版权声明 1、本帖标题:Discuz!X3.4 X3.2手机版安卓微信版无法登录、注册会产生404 undefined问题的解决方法
2、论坛网址:站长窝论坛
3、站长窝论坛的资源部分来源于网络,如有侵权,请联系站长进行删除处理。
4、会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。
5、站长窝论坛一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
6、本帖由游客1在站长窝论坛《程序综合区》版块原创发布, 转载请注明出处!
评论
最新回复 (1)
  • 游客1 游客组
    引用 2
    本帖最后由 民审-M 于 2017-10-19 17:44 编辑

    dz 解决 微信
    dz 登录 注册 微信 404
    dz undefined
    dz 发帖 回帖 网络出错
    dz 内置qq浏览器 404

    以下是网友提供的解决方案
    Discuz x3.2 GBK编码,微信内置浏览器才会出现这个问题,别的浏览器不会。
    附件覆盖\static\js 后台更新缓存
    下载地址(点击数字即可下载)→:29520

    2017/10/19 17:32:48 只看Ta 回复
返回
发新帖