搜索引擎优化模式(网站启用WebP格式图片-防止修改过的CSS,JS和代码失效)
优采云 发布时间: 2021-10-21 05:42搜索引擎优化模式(网站启用WebP格式图片-防止修改过的CSS,JS和代码失效)
Redissearch 在 Redis 上实现了一个搜索引擎,但与其他 Redis 搜索库不同,它不使用内部数据结构,例如排序集。数据存储在内存中,使用内存有效的自定义数据结构,强大的自动提示引擎,支持多语言使用UTF-8编码,支持Redis中已经存在的HASH对象作为文件索引。
RediSearch还可以集成到Wordpress中,替代Wordpress默认的搜索引擎,并支持搜索词提示、自动纠错、同义词等,可以让我们的搜索更快更强大。RediSearch 可以安装在本地 VPS 上,与 Wordpress 属于同一台服务器。索引速度快,文章更新时索引会自动更新。
本文文章将分享如何将RediSearch集成到Wordpress中,替换Wordpress默认的搜索功能。更多关于 WordPress 优化 文章,这里是(参考:我正在使用的 WordPress 插件):
网站启用WebP格式图片-PHP和Nginx转换WebP格式和自适应浏览器WordPress CSS、JS和代码失败
PS:2019年12月2日更新,如果你使用大量的WordPress插件,很容易出现各种冲突和问题。检测方法有:WordPress错误诊断模式——专门针对WP页面空白、服务器500错误、插件冲突。
PS:2020 年 3 月 19 日更新,WordPress 是一个非常好的建站工具,不仅可以用于博客,还可以作为 cms 内容建站网站。采集插件也非常好用:WordPress胖鼠标采集插件教程-WP自动采集并发布微信公众号、短书、知乎等其他网站。
一、RediSearch 安装与配置
网站:
官网: 插件:
首先确保您的服务器上启用了 Redis 服务。一般来说,如果您使用的是Oneinstack、LNMP和Pagoda BT面板,您可以一键安装Redis服务。然后,使用以下命令安装 RediSearch:
apt update
apt install cmake build-essential git -y
cd /tmp
git clone https://github.com/RedisLabsModules/RediSearch.git
cd RediSearch/cmake
cmake .. -DCMAKE_BUILD_TYPE=RelWithDebInfo
#看到如下输出表示成功
root@150-95-177-167:~# cd /tmp
root@150-95-177-167:/tmp# git clone https://github.com/RedisLabsModules/RediSearch.git
Cloning into 'RediSearch'...
remote: Enumerating objects: 178, done.
remote: Counting objects: 100% (178/178), done.
remote: Compressing objects: 100% (122/122), done.
remote: Total 23273 (delta 91), reused 100 (delta 54), pack-reused 23095
Receiving objects: 100% (23273/23273), 16.46 MiB | 7.09 MiB/s, done.
Resolving deltas: 100% (16751/16751), done.
root@150-95-177-167:/tmp# cd RediSearch/cmake
root@150-95-177-167:/tmp/RediSearch/cmake# cmake .. -DCMAKE_BUILD_TYPE=RelWithDebInfo
-- The C compiler identification is GNU 6.3.0
-- The CXX compiler identification is GNU 6.3.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Performing Test HAVE_W_INCOMPATIBLE_POINTER_TYPES
-- Performing Test HAVE_W_INCOMPATIBLE_POINTER_TYPES - Success
-- Performing Test HAVE_W_DISCARDS_QUALIFIERS
-- Performing Test HAVE_W_DISCARDS_QUALIFIERS - Failed
v1.6.0-251-g5baf48bd
CMake Warning (dev) at CMakeLists.txt:127 (GET_TARGET_PROPERTY):
Policy CMP0045 is not set: Error on non-existent target in
get_target_property. Run "cmake --help-policy CMP0045" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.
get_target_property() called with non-existent target "example_extension".
This warning is for project developers. Use -Wno-dev to suppress it.
-- Configuring done
-- Generating done
-- Build files have been written to: /tmp/RediSearch/cmake
#开始编译
make
编译完成后,执行如下命令将redisearch.so放入目录:
mkdir -p /etc/redis/modules
cp /tmp/RediSearch/cmake/redisearch.so /etc/redis/modules/redisearch.so
然后编辑redis.conf文件,添加如下代码,最后重启Redis。
loadmodule /etc/redis/modules/redisearch.so
#重启
sudo service redis-server restart
redis.conf文件常用的路径是/etc/redis/redis.conf,其他地方也有。比如Oneinstack的路径如下:
二、RediSearch插件使用2.1来配置服务器
前往 WordPress 官方网站下载 RediSearch 插件。启用后,首先在Redis服务器配置中填写你的Redis服务器地址、端口和索引名称。(点击放大)
2.2 索引内容设置
完成后点击索引选项,这里可以设置分类、标签、文章、页面等是否收录在索引中。(点击放大)
回到插件页面,可以看到RediSearch提示需要更新索引,点击同步更新。
索引已添加。
2.3 实时搜索
RediSearch 支持添加实时搜索,即当用户输入关键词时,会有提示。
2.4 同义词设置
RediSearch 的同义词设置允许您添加相关词以提高搜索质量。
三、RediSearch 搜索效果3.1 是否索引成功
可以通过以下命令查看RediSearch索引是否成功。
root@150-95-177-167: redis-cli #进入Redis server
127.0.0.1:6379> MODULE list #检查 modules 是否成功加载
1) 1) "name"
2) "ft"
3) "ver"
4) (integer) 999999
127.0.0.1:6379> INFO keyspace #查看数据库
# Keyspace
db0:keys=135,expires=0,avg_ttl=0
127.0.0.1:6379> SELECT 0 #选择0数据库
OK
127.0.0.1:6379> KEYS * #列出所有的Key
1) "ft:meimei/\xe4\xb8\x80\xe7\x9b\xb4\xe4\xbb\xa5\xe6\x9d\xa5\xef\xbc\x8c\xe6\x88\x91\xe6\x9c\x89\xe4\xb8\x80\xe4\xb8\xaa\xe5\x86\x99\xe2\x80\x9c\xe9\x95\xbf\xe6\x96\x87\xe7\xab\xa0\xe2\x80\x9d\xe7\x9a\x84\xe4\xb9\xa0\xe6\x83\xaf\xe3\x80\x82\xe6\x9c\x80\xe5\xbc\x80\xe5\xa7\x8b\xe7\x9a\x84\xe6\x97\xb6\xe5\x80\x99\xe5\x83\x8f\xe5\x86\x99\xe6\xb6\x88\xe6\x81\xaf\xe4\xb8\x80\xe6\xa0\xb7\xe6\x9d\xa5\xe5\x86\x99\xe5\x8d\x9a\xe5\xae\xa2\xef\xbc\x8c\xe6\x96\x87\xe7\xab\xa0\xe7\xae\x80\xe7\x9f\xad\xef\xbc\x8c\xe4\xbd\x86\xe4\xbe\x9d\xe7\x84\xb6\xe8\xa7\x89\xe5\xbe\x97\xe5\xbe\x88\xe9\x9a\xbe\xe5\x86\x99\xef\xbc\x8c\xe6\x89\xbe\xe4\xb8\x8d\xe5\x88\xb0\xe5\x90\x88\xe9\x80\x82\xe7\x9a\x84\xe8\xaf\xad\xe5\x8f\xa5\xe6\x9d\xa5\xe8\xa1\xa8\xe8\xbe\xbe\xe3\x80\x82\xe5\x90\x8e\xe6\x9d\xa5\xe6\x83\xb3\xe5\x87\xba\xe4\xb8\x80\xe4\xb8\xaa\xe2\x80\x9c\xe6\x87\x92\xe4\xb8\xbb\xe6\x84\x8f\xe2\x80\x9d\xe2\x80\x94\xe2\x80\x94\xe7\xbb\x99\xe6\x96\x87\xe7\xab\xa0\xe6\xb7\xbb\xe5\x8a\xa0\xe5\xa4\xa7\xe9\x87\x8f\xe7\x9a\x84\xe5\x9b\xbe\xe7\x89\x87\xef\xbc\x8c\xe4\xb8\x80\xe6\x9d\xa5\xe5\x8f\xaf\xe4\xbb\xa5\xe5\xa2\x9e\xe5\x8a\xa0\xe6\x96\x87\xe7\xab\xa0\xe5\x86\x85\xe5\xae\xb9\xef\xbc\x8c\xe4\xba\x8c\xe6\x9d\xa5\xe5\x9b\xbe\xe6\x96\x87\xe7\xbb\x93\xe5\x90\x88\xe7\x9a\x84\xe6\x96\x87\xe7\xab\xa0\xe8\xaf\xbb\xe8\xb5\xb7\xe6\x9d\xa5\xe6\x9b\xb4\xe6\x9c\x89\xe4\xb9\x90\xe8\xb6\xa3\xe3\x80\x82"
2) "ft:meimei/content"
3) "nm:meimei/menu_order"
4) "ft:meimei/fixed"
5) "ft:meimei/15"
6) "ft:meimei/\xef\xbc\x89"
7) "ft:meimei/mp4"
127.0.0.1:6379> exit #退出
3.2 实时搜索性能
启用 RediSearch 后,Wordpress 搜索结果会自动显示来自 RediSearch 索引的结果,并且还支持词关联,即实时搜索建议,如下图所示:
四、总结
RediSearch 官方声称它改进了中文搜索。在实际测试中,发现RediSearch对中文搜索不是很友好,但是英文搜索确实非常强大。不仅速度快,而且结果也非常准确。
使用 RediSearch 进行搜索时,关键是配置 RediSearch 服务器。由于服务器重启后Redis会消失,建议在RediSearch插件后台勾选Write redis data to the disk,这样重启后就不需要重新索引了。
文章来自:Digzhan 不,保留所有权利。本站文章为作者原创文章除出处外,可自由引用,但请注明出处。部分内容引用自 wp-bullet。