浅析DedeCMS GBK版安装sphinx全文索引无法查询无结果的解决方法_dedecms_CMS教程_脚本之家

本测试安装的是sphinx中文版-coreseek 4.0版,用测试中文的命令在命令行查询: g83迪尔课堂自学网-|第二课堂|--(官网)
g83迪尔课堂自学网-|第二课堂|--(官网)
echo 网络搜索 | iconv -f gbk -t utf-8 | search -c D:/webserver/coreseek-4.0.1-win32/etc/csft_dedecmsv57.conf --stdin | iconv -f utf-8 -t gbk g83迪尔课堂自学网-|第二课堂|--(官网)
g83迪尔课堂自学网-|第二课堂|--(官网)
可成功查询。 g83迪尔课堂自学网-|第二课堂|--(官网)
g83迪尔课堂自学网-|第二课堂|--(官网)
但在DedeCms中却无结果,经过摸索,终于找到原因,DedeCMS GBK版的search.php中的关键字编辑是GBK的,而sphinx全文索引要求是utf8, g83迪尔课堂自学网-|第二课堂|--(官网)
所以无法查询GBK编码的中文; g83迪尔课堂自学网-|第二课堂|--(官网)
g83迪尔课堂自学网-|第二课堂|--(官网)
解决方法: g83迪尔课堂自学网-|第二课堂|--(官网)
打开plus中的search.php , 找到: g83迪尔课堂自学网-|第二课堂|--(官网)
$keyword = addslashes(cn_substr($keyword,30)); g83迪尔课堂自学网-|第二课堂|--(官网)
g83迪尔课堂自学网-|第二课堂|--(官网)
在这行下面增加: g83迪尔课堂自学网-|第二课堂|--(官网)
$keyword= mb_convert_encoding($keyword,"UTF-8", "GBK"); g83迪尔课堂自学网-|第二课堂|--(官网)
g83迪尔课堂自学网-|第二课堂|--(官网)
即可正常查询! g83迪尔课堂自学网-|第二课堂|--(官网)

扫一扫手机访问