wiki.js+windows+PostgreSQL搭建知识库,并实现中文全文搜索
官网: https://wiki.js.org/
node.js安装:https://blog.csdn.net/weixin_42870215/article/details/123852069
Wiki.js下载地址:https://wwd.lanzouq.com/iTSRJ06e48ud
postgresq下载地址:https://www.enterprisedb.com/downloads/postgres-postgresql-downloads
scws下载地址:http://www.xunsearch.com/scws/download.php
zhparser下载地址:https://github.com/kerneltravel/zhparser
注意事项:node.js安装过程中,要把node.js的安装目录写在nodejs文件夹下。例如:D:\nodejs
在相关网址的postgresql下载地址下载。

要下载32位的,因为后续支持中文全文搜索功能的插件zhparser是32 位的,启动zhparser需要32位的postgresql。
如下载64位postgresql的话,启动zhparser插件会显示错误:
“DLL加载失败:%1不是有效的Win32应用程序”
双击下载的安装包安装postgresql,除了第二个页面可以改安装路径,其他的地方都不用改。
安装包可能会弹出安装Stack Builder
1.第一个页面选择:PostgreSQL 10(x32) on port 5432 或 PostgreSQL 10(x64) on port 5432(基于安装的PostgreSQL是32位还是64位);
2.第二个页面选择:Add-ons, tools and utilities下的EDB Language Pack v1.0-5;
3.第三个页面可以改一下安装路径;
4.最后的Language Selection选择English-English;
其他的都不用改,点next或finish即可。
在相关网址中下载scws,下载scws-1.2.3,并解压缩后生成文件夹scws-1.2.3,把文件夹scws-1.2.3重命名为scws。
在相关网址中下载zhparser,下载后解压生成文件夹zhparser-master,把文件夹zhparser-master和文件夹scws放在同一个文件夹下。
用VS(最好是比较新的版本,我用的2022)打开scws\win32下的scws.sln(如需要迁移文件则根据VS的指示迁移),然后关闭VS。
用VS(最好是比较新的版本,我用的2022)打开zhparser-master文件夹下的zhparser.sln(如果libscws未能找到,则重新加载)。
属性 --> C/C++ --> 常规的‘附加包含目录’ 添加头文件目录(如下图)。
其中:
PostgreSQL文件夹是PostgreSQL数据库的安装目录
Postgresqlzh文件夹是放scws文件夹和zhparser-master文件夹的目录

D:\postgresqlzh\scws\libscws
D:\PostgreSQL\include
D:\PostgreSQL\include\server
D:\PostgreSQL\include\server\utils
D:\PostgreSQL\include\server\port
D:\PostgreSQL\include\server\port\win32
D:\PostgreSQL\include\server\port\win32_msvc
%(AdditionalIncludeDirectories)
可能会发生的错误:
a.C2059 语法错误:“(”
如果是下面代码的语法错误,则删除config_win32.h中“#define logf(x) ((float)log((double)(x)))”

b.未声明标识符

打开xdict.h文件,把下图的中文注释都删掉

同样把上面的头文件路径添加到zhparser的头文件目录中,并在 属性 --> 链接器 --> 常规中的’附加库目录’添加以下路径:
D:\PostgreSQL\lib
D:\postgresqlzh\zhparser-master
%(AdditionalLibraryDirectories)
可能会发生的错误:
error LNK2019:无法解析的外部符号 __imp__sprintf 和 error LNK2019:无法解析的外部符号 __imp__printf。
解决方法:在项目属性->链接器->输入里面加入库legacy_stdio_definitions.lib
本地创建wiki文件夹。例如D:\wiki
解压在wiki.js下载地址下载的压缩包

重命名配置文件config.sample.yml为config.yml

打开config.yml,修改config.yml
改为(如下图):(host依据需求可以选择不改,user和pass改成postgresql的用户名密码)

在postgresql数据库中创建wiki数据库

在wiki\server\modules\search\postgres下的definition.yml中的enum添加chinese_zh

在wiki文件夹下cmd
输入: node server
运行成功后不要关闭

访问: http://localhost:3000/
建议把localhost改为电脑ip。
填写基本信息,设置管理员邮箱和密码,然后等待安装并输入邮箱和密码。





然后就可以快乐的使用中文全文搜索啦。
我需要在客户计算机上运行Ruby应用程序。通常需要几天才能完成(复制大备份文件)。问题是如果启用sleep,它会中断应用程序。否则,计算机将持续运行数周,直到我下次访问为止。有什么方法可以防止执行期间休眠并让Windows在执行后休眠吗?欢迎任何疯狂的想法;-) 最佳答案 Here建议使用SetThreadExecutionStateWinAPI函数,使应用程序能够通知系统它正在使用中,从而防止系统在应用程序运行时进入休眠状态或关闭显示。像这样的东西:require'Win32API'ES_AWAYMODE_REQUIRED=0x0
我有一个用户工厂。我希望默认情况下确认用户。但是鉴于unconfirmed特征,我不希望它们被确认。虽然我有一个基于实现细节而不是抽象的工作实现,但我想知道如何正确地做到这一点。factory:userdoafter(:create)do|user,evaluator|#unwantedimplementationdetailshereunlessFactoryGirl.factories[:user].defined_traits.map(&:name).include?(:unconfirmed)user.confirm!endendtrait:unconfirmeddoenden
我使用Nokogiri(Rubygem)css搜索寻找某些在我的html里面。看起来Nokogiri的css搜索不喜欢正则表达式。我想切换到Nokogiri的xpath搜索,因为这似乎支持搜索字符串中的正则表达式。如何在xpath搜索中实现下面提到的(伪)css搜索?require'rubygems'require'nokogiri'value=Nokogiri::HTML.parse(ABBlaCD3"HTML_END#my_blockisgivenmy_bl="1"#my_eqcorrespondstothisregexmy_eq="\/[0-9]+\/"#FIXMEThefoll
这似乎非常适得其反,因为太多的gem会在window上破裂。我一直在处理很多mysql和ruby-mysqlgem问题(gem本身发生段错误,一个名为UnixSocket的类显然在Windows机器上不能正常工作,等等)。我只是在浪费时间吗?我应该转向不同的脚本语言吗? 最佳答案 我在Windows上使用Ruby的经验很少,但是当我开始使用Ruby时,我是在Windows上,我的总体印象是它不是Windows原生系统。因此,在主要使用Windows多年之后,开始使用Ruby促使我切换回原来的系统Unix,这次是Linux。Rub
英文版英文链接关注公众号在“亚特兰蒂斯的回声”中踏上一段难忘的冒险之旅,深入未知的海洋深处。足智多谋的考古学家AriaSeaborne偶然发现了一件古代神器,揭示了一张通往失落之城亚特兰蒂斯的隐藏地图。在她神秘的导师内森·兰登教授的指导和勇敢的冒险家亚历克斯·默瑟的帮助下,阿丽亚开始了一段危险的旅程,以揭开这座传说中城市的真相。他们的冒险之旅带领他们穿越险恶的大海、神秘的岛屿和充满陷阱和谜语的致命迷宫。随着Aria潜在的魔法能力的觉醒,她被睿智勇敢的QueenNeria的幻象所指引,她让她为即将到来的挑战做好准备。三人组揭开亚特兰蒂斯令人惊叹的隐藏文明,并了解到邪恶的巫师马拉卡勋爵试图利用其古
华为OD机试题本篇题目:明明的随机数题目输入描述输出描述:示例1输入输出说明代码编写思路最近更新的博客华为od2023|什么是华为od,od薪资待遇,od机试题清单华为OD机试真题大全,用Python解华为机试题|机试宝典【华为OD机试】全流程解析+经验分享,题型分享,防作弊指南华为o
之前在培训新生的时候,windows环境下配置opencv环境一直教的都是网上主流的vsstudio配置属性表,但是这个似乎对新生来说难度略高(虽然个人觉得完全是他们自己的问题),加之暑假之后对cmake实在是爱不释手,且这样配置确实十分简单(其实都不需要配置),故斗胆妄言vscode下配置CV之法。其实极为简单,图比较多所以很长。如果你看此文还配不好,你应该思考一下是不是自己的问题。闲话少说,直接开始。0.CMkae简介有的人到大二了都不知道cmake是什么,我不说是谁。CMake是一个开源免费并且跨平台的构建工具,可以用简单的语句来描述所有平台的编译过程。它能够根据当前所在平台输出对应的m
C#实现简易绘图工具一.引言实验目的:通过制作窗体应用程序(C#画图软件),熟悉基本的窗体设计过程以及控件设计,事件处理等,熟悉使用C#的winform窗体进行绘图的基本步骤,对于面向对象编程有更加深刻的体会.Tutorial任务设计一个具有基本功能的画图软件**·包括简单的新建文件,保存,重新绘图等功能**·实现一些基本图形的绘制,包括铅笔和基本形状等,学习橡皮工具的创建**·设计一个合理舒适的UI界面**注明:你可能需要先了解一些关于winform窗体应用程序绘图的基本知识,以及关于GDI+类和结构的知识二.实验环境Windows系统下的visualstudio2017C#窗体应用程序三.
MIMO技术的优缺点优点通过下面三个增益来总体概括:阵列增益。阵列增益是指由于接收机通过对接收信号的相干合并而活得的平均SNR的提高。在发射机不知道信道信息的情况下,MIMO系统可以获得的阵列增益与接收天线数成正比复用增益。在采用空间复用方案的MIMO系统中,可以获得复用增益,即信道容量成倍增加。信道容量的增加与min(Nt,Nr)成正比分集增益。在采用空间分集方案的MIMO系统中,可以获得分集增益,即可靠性性能的改善。分集增益用独立衰落支路数来描述,即分集指数。在使用了空时编码的MIMO系统中,由于接收天线或发射天线之间的间距较远,可认为它们各自的大尺度衰落是相互独立的,因此分布式MIMO
深度学习部署:Windows安装pycocotools报错解决方法1.pycocotools库的简介2.pycocotools安装的坑3.解决办法更多Ai资讯:公主号AiCharm本系列是作者在跑一些深度学习实例时,遇到的各种各样的问题及解决办法,希望能够帮助到大家。ERROR:Commanderroredoutwithexitstatus1:'D:\Anaconda3\python.exe'-u-c'importsys,setuptools,tokenize;sys.argv[0]='"'"'C:\\Users\\46653\\AppData\\Local\\Temp\\pip-instal