dedecms tags伪静态完美解决办法(3)

  在网站根目录下找到tags.php 此文件,将以下代码替换掉:

$tag = trim($_SERVER['QUERY_STRING']);

  换成

$tag = strtolower(trim($_SERVER['QUERY_STRING']));

  出现这个问题的原因是IIS伪静态中文转码为UTF8,解决方法就是在tags.php中加入判断UTF8编码的语句,如果是则转换为GBK,这样就可以解决了
  方法:

  1.把以下代码加入到根目录下tags.php中的18行下面,也就是if(isset($tags[2])) $PageNo = intval($tags[2]);下面哦:

function is_utf8($tag) { if (preg_match("/^([".chr(228)."-".chr(233)."]{1}[".chr(128)."-".chr(191)."]{1}[".chr(128)."-".chr(191)."]{1}){1}/",$tag) == true || preg_match("/([".chr(228)."-".chr(233)."]{1}[".chr(128)."-".chr(191)."]{1}[".chr(128)."-".chr(191)."]{1}){1}$/",$tag) == true || preg_match("/([".chr(228)."-".chr(233)."]{1}[".chr(128)."-".chr(191)."]{1}[".chr(128)."-".chr(191)."]{1}){2,}/",$tag) == true) { return true; } else { return false; } }

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/101b50f7128e5445be3c63873104ddb4.html