分享

太强了】只要1个js文件,你就能搭建一套wiki系统!学会这个操作!可以吹1年!

 风声之家 2023-04-21 发布于江苏

官网:https://docs./install


 

你可能听说过「世界上最好的编程语言」的梗吧?它起源于 PHP 这门编程语言早期的官方文档中的一句宣传语,并逐渐成为编程社区里广为流传的一个笑话:

图片

虽然这个口号看起来有些幼稚,但是能够提出这样的口号,至少说明该语言的质量应该是相当不错的。实际上,正如早期的 PHP 一样,有一些开源项目也具有这种与众不同的自信。

当你打开 Wiki.js 的官网时,你会看到一个简短而有力的口号:

"The most powerful and extensible open source Wiki software."

图片

正如这个口号所描述的一样,Wiki.js 是一款基于 Node.js 和 Vue 技术栈开发的,自称是最强大、可高度扩展的开源 Wiki 软件。尽管市场上已经有许多 Wiki.js 的竞品,比如 Confluence、语雀、Notion 等等,但它为用户提供了一个完整的 Wiki 站点解决方案,包括存储、评论系统、访问统计和全文搜索等等。而这些特性既强大,又易于扩展。

快速部署

对于开源项目而言,即使拥有丰富的功能,如果安装和部署过程复杂,会使用户门槛增高,让他们望而却步。

然而,Wiki.js 同时具备简单和强大两种特性。前者主要指部署,只需要与一个简单的 RDBMS 数据库配合使用,例如主流的 PostgreSQL、MySQL、SQLite 等,就可以快速运行 Wiki.js。而后者将在下文中陆续展现。

Wiki.js 的官方网站提供了不同方式的安装教程,但最简单的方法是使用 Docker Compose 进行安装,这是最省事的方法。



当然,你也可以更为简便地仅使用 SQLite,操作方法可以参考这篇文章。但据 Wiki.js 官方称,在 3.0 版本中仅支持 PostgreSQL,因为它支持更多特性。因此,我的建议是按照官方说明进行操作,这样最为可靠。

用户界面:样式精美,友好易用

安装完成后,只需访问对应的 URL 地址并设置默认的管理员账户,即可开始使用 Wiki.js。

Wiki.js 自带一套相对精美的 UI 设计,采用经典的布局方式,即左侧为导航侧栏、右侧为目录,符合一般的从左到右阅读习惯,这也是默认的访客页面。

图片

此外,Wiki.js 还自带了一套管理后台,使用管理员账户登录后,右上角会多出几个额外的选项,点击「齿轮」图标即可进入管理后台界面:

图片

在管理后台中,左侧有许多 Wiki.js 的设置选项,例如我们可以设置网站的基本信息以方便 SEO、管理标签和页面(文章)等。当然,Wiki.js 还提供了多种语言包支持,我们可以下载右侧的语言包并进行修改:

图片

编辑器:选择丰富,功能齐全

Wiki.js提供多种编辑器选择,包括Markdown、Visual Editor(所见即所得的WYSIWYG)、AsciiDoc和原始的HTML编辑器等。

图片

其中,Markdown和Visual Editor编辑器的功能最为丰富全面。

图片

在编辑器页面的底部状态栏中,会显示当前文章所在的位置和字符数。编辑完成后,需要点击右上角的“保存”按钮才能完成修改。如果需要对文章进行额外的设置,例如标题、描述或发布时间,则可以单击旁边的“页面”按钮进行设置。

网站分析工具应有尽有

在建立和管理网站时,了解访客情况对于优化和改进网站非常重要。收集访问数据可以提供诸如行为分析、地区、访问量等指标,这些指标为了分析用户行为和偏好提供了重要的参考价值。

图片

Wiki.js 提供了多达十几种的网站分析工具或解决方案,包括 Google Analytics、百度统计、Matomo、StatCounter 等。使用者可以根据自己或团队的需要选择其中的一种或多种,然后填写相应的信息即可。

用户管理与身份验证

Wiki.js不仅仅只是用于构建Wiki站点,还直接提供了用户管理体系,这在团队协作或需要多人使用时非常方便。通常情况下,用户管理体系与操作权限有关,这往往在实际开发过程中逻辑复杂且步骤繁琐。而Wiki.js提供的用户管理系统可以简化用户登录和权限管理流程。默认情况下,有两个组,即管理员组和访客组,我们也可以根据需要自定义其他用户组,并将对应的用户归入相应的组别中进行统一管理。

图片

除了在已注册的Wiki.js站点上直接注册用户之外,Wiki.js还集成了国外多个平台的身份验证,如GitHub、Google、Slack等。如果你想接入自己的身份认证服务,Wiki.js还预留了OAuth2、CAS、Generic OpenID Connect等多种认证服务接口。

图片

锦上添花的细节

除了前文提到的功能外,Wiki.js 还有许多贴心的细节。

首先是内置的类似于 Git 的版本控制系统,它可以自动跟踪页面的修改历史,方便我们查看不同版本之间的差异,回滚到之前的版本,甚至与远程 Git 仓库同步。

图片

此外,Wiki.js 还集成了 Let's Encrypt,在部署和运行时会自动为你申请 SSL 证书,帮你免去了繁琐的 HTTPS 配置。另外,你还可以在 Wiki.js 后台中配置邮箱,方便发送通知、欢迎信息或重置密码等邮件。

此外,Wiki.js 还预留了自动化接口,配置了 API 访问密钥后,你可以通过 GraphQL 接口与其他自动化工具集成或关联,同时也可以参考接口文档。未来版本中,Wiki.js 还会提供 Webhook 功能。

总结

阅读本文后,您将了解到 Wiki.js 提供了即开即用的功能特性,并且这些特性在 Wiki.js 3.0 版本(目前正在开发中)中将得到进一步的改进和扩展。

不过,Wiki.js 并非完美无缺。例如,它目前的主题单一且自定义主题的能力非常有限。另外,它还不支持第三方插件或扩展,因此如果缺少某些功能,您只能等待 Wiki.js 官方实现。这些缺点可能只会在 3.0 版本中得到解决。

如果您在阅读本文后对 Wiki.js 感到兴趣,那么在使用之前您需要注意一点:Wiki.js 采用 AGPL 3.0 许可证。如果您计划在使用过程中对 Wiki.js 源代码进行定制或修改,那么在使用之前最好仔细考虑。


总结

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多