这篇文章主要围绕浅析DedeCMSGBK版安装sphinx全文索引无和dedecms安装步骤展开,旨在为您提供一份详细的参考资料。我们将全面介绍浅析DedeCMSGBK版安装sphinx全文索引无的优
这篇文章主要围绕浅析DedeCMS GBK版安装sphinx全文索引无和dedecms安装步骤展开,旨在为您提供一份详细的参考资料。我们将全面介绍浅析DedeCMS GBK版安装sphinx全文索引无的优缺点,解答dedecms安装步骤的相关问题,同时也会为您带来CMS案例:phpcms v9 配置sphinx全文索引教程、DedeCMS 5.6升级DedeCMS5.7SP1 后台文档类目和发布人丢失不显示、dedecms DedeCms模板安装/制作概述、DedeCMS GBK版安装sphinx全文索引无法查询无结果怎么办的实用方法。
本文目录一览:- 浅析DedeCMS GBK版安装sphinx全文索引无(dedecms安装步骤)
- CMS案例:phpcms v9 配置sphinx全文索引教程
- DedeCMS 5.6升级DedeCMS5.7SP1 后台文档类目和发布人丢失不显示
- dedecms DedeCms模板安装/制作概述
- DedeCMS GBK版安装sphinx全文索引无法查询无结果怎么办
浅析DedeCMS GBK版安装sphinx全文索引无(dedecms安装步骤)
本测试安装的是dedecms织梦sphinx中文版-coreseek 4.0版,用测试中文的命令在命令行查询:
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
可成功查询。
但在DedeCms中却无结果,经过摸索,终于找到原因,DedeCMS GBK版的search.php中的关键词编辑是GBK的,而sphinx全文索引要求是utf8,
所以无法查询GBK编码的中文;
解决办法:
打开plus中的search.php , 找到:
$keyword = addslashes(cn_substr($keyword,30));
在这行下面增加:
$keyword= mb_convert_encoding($keyword,"UTF-8", "GBK");
即可正常查询!dedecms织梦
本文章网址:http://www.ppssdd.com/code/26306.html。转载请保留出处,谢谢合作!CMS案例:phpcms v9 配置sphinx全文索引教程
《CMS案例:PHPcms v9 配置sphinx全文索引教程》要点:
本文介绍了CMS案例:PHPcms v9 配置sphinx全文索引教程,希望对您有用。如果有疑问,可以联系我们。
CMS系统一、首先需要在服务器上安装sphinx
在Windows上安装sphinx
1.下载支持MysqL的包 http://www.sphinxsearch.com/downloads/sphinx-0.9.9-win32.zip
2.解压缩 sphinx-0.9.9-win32.zip 到 D:\sphinx
3.安装sphinx服务,在命令行执行命令
CMS系统
英文参照:http://www.sphinxsearch.com/docs ... #installing-windows
在Linux服务器上安装sphinx
1.下载源码包 http://www.sphinxsearch.com/downloads/sphinx-0.9.9.tar.gz
CMS系统$ tar xzvf sphinx-0.9.8.tar.gz
$ cd sphinx
$ ./configure --prefix=/usr/local/sphinx --with-MysqL/MysqL
$ make
$ make install
CMS系统 常见问题1
CMS系统
/usr//sphinx9/src.cpp:20060: undefined reference to `libiconv_open'
/usr/local/sphinx-0.9.9/src/sphinx.cpp:20078: undefined reference to `libiconv'
/usr/local/sphinx-0.9.9/src/sphinx.cpp:20084: undefined reference to `libiconv_close'
collect2: ld returned 1 exit status
make[2]: *** [indexer] Error 1
make]: Leaving directory `/home/jling/sphinx-0.9.9/src'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/home/jling/src'
make: *** [all-recursive] Error 1
CMS系统解决办法:打开configure文件,找到“#define USE_LIBICONV 1”,将注释去掉,并将1改成0.
CMS系统
常见问题2
CMS系统
error while loading shared libraries: libMysqLclient.so16: cannot open shared object file: No such file or directory
CMS系统
解决办法:
CMS系统
64位系统ln -s /webserver/MysqL/lib/libMysqLclient16.00 /lib6416
3216
CMS系统
CMS系统sphinx.conf样例
CMS系统source main
{
type = MysqL #数据库类型
sql_host = 10.228134.211 #数据库ip
sql_user = admin #数据库用户名
sql_pass #数据库密码
sql_db = PHPcms_v9 #数据库名
sql_port 3306 # 数据库端口CMS系统 sql_query_pre = SET NAMES utf8
sql_query_pre = REPLACE INTO v9_sphinx_counter SELECT 1, MAX(searchid) FROM v9_search
sql_query = SELECT searchidadddate siteid typeid id data FROM v9_search \
WHERE searchid>=$start AND searchid<=$end
sql_query_range = SELECTmax_doc_id FROM v9_sphinx_counter WHERE counter_id=1
sql_range_step 5000CMS系统 #字符串属性设置、需要过滤、排序的时候用到
sql_attr_uint = typeid
sql_attr_uint = siteid
sql_attr_uint = id
sql_attr_timestamp = adddate
sql_query_info = SELECT * FROM v9_search WHERE searchid=$id
}CMS系统 source delta
sql_query_pre = SET NAMES utf8
sql_query \
WHERE searchid >( SELECT max_doc_id FROM v9_sphinx_counter WHERE counter_id1 )
sql_query_post ) FROM v9_search
}CMS系统 #主索引
index main
{
source = main
# 放索引的目录
path = D:\sphinx\data\main
# 编码
charset_type = utf8
# 指定utf-8的编码表
charset_table 0.A..Z->a..z _ a U+410..U42F->U430.44F44F
# 简单分词,只支持0和1,如果要搜索中文,请指定为1
ngram_len 1
# 需要分词的字符,去掉前面的注释
ngram_chars = U3000.2FA1F
#增量索引
index delta
{
source = delta
path \delta
}
CMS系统 indexer
{
mem_limit 128M
}CMS系统 searchd
{
port 9312
log \PHPcms\searchd.log
query_log \query.log
read_timeout 5
max_children 30
pid_file .pid
max_matches 2000
seamless_rotate 0
preopen_indexes 0
unlink_old 1
}
CMS系统附件:设置计划任务更新索引
1.windows下
需要设置计划任务
#凌晨4点合并索引,执行merge.bat
#其余时间每分钟更新索引,执行delta.bat
merge.bat
CMS系统
@ECHO off
D\bin\indexer.exe --config D\sphinx.conf --merge main delta --rotate
echo indexingwindow will close when complete
CMS系统delta.bat
@ECHO off
D.conf delta --rotate
echo indexingwhen complete
CMS系统
2.linux下编辑定时任务 crontab -e
CMS系统
#凌晨4点合并索引,其余时间每分钟更新索引
* 03 * * /bin/indexer --config /etc--rotate
623 --rotate
0 4 --rotate
CMS系统
各种路径、权限需要应用所在服务器一致,如:
sphinx.conf 中需要配置
sql_host 数据库主机地址
sql_user 数据库用户名
sql_pass 数据库密码
sql_db 数据库名
sql_port 数据库端口
PHPcms表前缀样例中为PHPcms_
索引路径 D:\sphinx\data\delta
CMS系统
DedeCMS 5.6升级DedeCMS5.7SP1 后台文档类目和发布人丢失不显示
将Dedecms 5.6升级至 Dedecms5.7SP1后,后台的文档列表不显示类目和发布人这个问题相信很多人都遇到过,特意寻找过解决方法,功夫不负有心人,终于在网络上找到,方法很简单,可以通过以下两步方法进行解决:
一、清空/data/tplcache 文件夹中的所有缓存文件,清空后发布人应该会显示了。
二、删除/data/cache/inc_catalog_base.inc 该文件,清空后类目应该会显示了。
dedecms DedeCms模板安装/制作概述
◆DedeCms模板安装/制作概述:
--------------------------------------------------------------------------------
DedeCms系统的模板是非固定的,用户可以在新建栏目时可以自行选择栏目模板,官方仅提供最基本的默认模板,即是内置系统模型的各个模板,由于DedeCms支持自定义频道模型,用户自定义新频道模型后,还需要按该模型的字段设计一套新的模板,此外,DedeCms也支持使用风格的形式使用模板,默认风格是 default,它表示系统默认使用 cmspath/templets/default 这个文件夹的模板,如果你下载了一套新的模板,你可以不必要删除 default 原有的文件,把下载的模板文件夹命名你想要的风格名称,如 style2 等,然后在后台修改了默认的模板风格名称为 style2 ,那系统将使用 templets/style2 这文件当作默认模板,但是若你手工指定了栏目模板的位置,则后台参数风格的定义无效。
一、概念,设计和使用模板,必须要理解下面几个概念
1、板块(封面)模板:
指网站主页或比较重要的栏目封面频道使用的模板,一般用“index_识别ID.htm”命名,此外,用户单独定义的单个页面或自定义标记,也可选是否支持板块模板标记,如果支持,系统会用板块模板标记引擎去解析后才输出内容或生成特定的文件。
2、列表模板:
指网站某个栏目的所有文章列表的模板,一般用 “list_识别ID.htm” 命名。
3、档案模板:
表示文档查看页的模板,如文章模板,一般用 “article_识别ID.htm” 命名。
4、其它模板:
一般系统常规包含的模板有:主页模板、搜索模板、RSS、JS编译功能模板等,此外用户也可以自定义一个模板创建为任意文件。
二、 命名,DedeCms模板默认命名规则如下
1、模板保存位置:
模板目录:cmspath/templets/样式名称(英文,默认为default,其中system为系统底层模板,plus为插件使用的模板)/具体功能模板文件}
2、 模板文件命名规范:
(1)index_识别ID.htm: 表示板块(栏目封面)模板;
(2)list_识别ID.htm: 表示栏目列表模板;
(3)article_识别ID.htm: 表示内容查看页(文档模板,包括专题查看页);
(4)search.htm: 搜索结果列表模板;
(5)index.htm: 主页模板;
注解:[识别ID]可以在“频道模型管理”的地方获得,当然,你也可以在“频道模型管理”的地方确定某个频道的模板命名。
例:list_image.htm 表示是就是内容类型为图片集的栏目默认列表模板。
article_article.htm 表示的是文章查看页模板。
三、其它模板说明
1、默认底层模板
位置: cmspath/templets/system
功能:在没有指定标记的默认底层模板的时候,系统将自动调用这个文件夹的相应文件作为底层模板。
2、插件目录模板
位置: cmspath/templets/plus
功能:评论、友情链接、RSS地图等模板。
3、会员后台模板
位置: cmspath/member/templets
功能:会员后台的模板。
四、二次开发
DedeCms主要的模板解析类是 include/inc_arcpart_view.php、include/inc_arclist_view.php、include/inc_archives_view.php,这些类是与pub_dedetag.php一起工作的,如果你想为文档模板、列表模板、板块模板增加一些功能,可以直接修改这几个类的ParseTemplet()或ParseTempletsFirst()这类的方法,把标记名称,属性对应试相应该的功能函数即时。
以上就介绍了
DedeCMS GBK版安装sphinx全文索引无法查询无结果怎么办
以下是对DedeCMS GBK版安装sphinx全文索引无法查询无结果的解决方法进行了详细的分析介绍,需要的朋友可以参考下
推荐学习:织梦cms
本测试安装的是sphinx中文版-coreseek 4.0版,用测试中文的命令在命令行查询:
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
可成功查询。
但在DedeCms中却无结果,经过摸索,终于找到原因,DedeCMS GBK版的search.php中的关键字编辑是GBK的,而sphinx全文索引要求是utf8,
所以无法查询GBK编码的中文;
解决方法:
打开plus中的search.php , 找到:
$keyword = addslashes(cn_substr($keyword,30));
在这行下面增加:
$keyword= mb_convert_encoding($keyword,"UTF-8", "GBK");
即可正常查询!
以上就是DedeCMS GBK版安装sphinx全文索引无法查询无结果怎么办的详细内容,更多请关注php中文网其它相关文章!
关于浅析DedeCMS GBK版安装sphinx全文索引无和dedecms安装步骤的介绍已经告一段落,感谢您的耐心阅读,如果想了解更多关于CMS案例:phpcms v9 配置sphinx全文索引教程、DedeCMS 5.6升级DedeCMS5.7SP1 后台文档类目和发布人丢失不显示、dedecms DedeCms模板安装/制作概述、DedeCMS GBK版安装sphinx全文索引无法查询无结果怎么办的相关信息,请在本站寻找。
本文标签: