搭建自己的Anki同步服务器

搭建自己的Anki同步服务器

Anki自带的AnkiWeb同步服务体验较差,当你的单词库较大时,同步起来体验非常的差。因此我在腾讯云上自己搭建了Anki同步服务器。

注意:

  1. windows端只能使用2.0的旧版本
    2.0版本使用python2写的插件,2.1版本用python3写的插件,而GitHub上提供的服务器版本是基于python2.7的,所以新版本无法使用此方法来和私有服务器同步,可以和AnkiWeb同步或是下载具有同步功能的插件来同步,但是我不知道怎么写一个适合新版本的插件出来,因此使用旧版Anki。
  2. 发现一个严重的问题,桌面端和安卓端会冲突。
    桌面端和服务器同步之后,安卓端要重新下载整个库;安卓端和服务器同步后,桌面端要重新下载。尚未发现解决办法。

我在网上查到的教程都是比较老的,而且大都模仿Anki知乎专栏的这篇文章。我主要是参考了idealclover的Linux 下尝试自建Anki服务器,在此表示感激。

服务端配置

选择CentOS 7.5 x64系统

我在腾讯云上有个云服务器,关机重新安装系统,很方便,然后用putty远程登录服务器

安装AnkiServer包

# easy_install AnkiServer
报错

your setuptools is too old

“your setuptools is too old (<12)”

可能是安装PasteScript出错

从头开始看,安装PasteScript的时候就不正常了,然后我试着pip PasteScript,机器没有pip,用easy_install 也不行,我干脆去下了个pip。
# curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
# python get-pip.py
然后直接
pip install AnkiServer
就好了

设置AnkiServer

~目录下创建Anki文件夹
# mkdir Anki

找到AnkiServer中示例配置的目录,我的在/usr/lib/python2.7/site-packages/AnkiServer-2.0.6-py2.7.egg/examples

复制example.ini 到我们的目录,修改为production.ini
# cp example.ini ~/Anki/production.ini

之后编辑该文档
# vim ~/Anki/production.ini

production.ini

我用红色涂抹的是主机地址,填你的服务器的内网地址,下面的允许来访问你的服务器的机器的ip,可以枚举每个你允许的ip,也可以设置0.0.0.0 允许任何ip地址连接,然后按esc键,输入:wq保存并退出vim

# ankiserverctl.py -h
查看命令选项

查看命令选项

输入 # ankiserverctl.py adduser <username> 来添加用户,该命令回车后会要求你输入密码

可以查看是否成功添加了用户
# ankiserverctl.py lsuser
成功的话,你会看到自己添加的用户名

测试运行
# ankiserverctl.py debug

没有报错的话我们就可以正式运行Ankiserver了,先用Ctrl+C中止调试程序,然后
# ankiserverctl.py start

Anki2.0版Windows客户端的设置

打开插件文件夹


本来这里是没有这个mysyncserver.py文件的,我们创建一个
文件内容如下:

import anki.sync
anki.sync.SYNC_BASE = 'http://[你的服务器外网ip]:27701/'
anki.sync.SYNC_MEDIA_BASE = 'http://[你的服务器外网ip]:27701/msync/'

保存后,重启Anki客户端
点击同步按钮,输入自己在服务器里设置的用户名和密码,然后就像用AnkiWeb服务一样了,不过体验如丝般顺滑,而且可以同步很大的库文件

AnkiDroid安卓端设置

得益于大家的力量,我成功搭建了自己的Anki同步服务器,但愿我的文章能给你提供帮助。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、Python简介和环境搭建以及pip的安装 4课时实验课主要内容 【Python简介】: Python 是一个...
    _小老虎_阅读 11,131评论 0 10
  • Anki是啥 直接看这里好了Anki——近乎完美的神器,大家都应该听说过艾宾浩斯记忆曲线,这个软件就是对其的一种实...
    output阅读 12,335评论 1 4
  • 曾经有一个笑话,是关于一个学习成绩很差的高中学生和他爸的一段对话。他爸问他,英语难学吗?这孩子说,难学;他爸问,你...
    Corkine阅读 33,760评论 17 291
  • 成年人边走路边抽烟时,假若手臂自然垂下,手拿烟头的位置正好是小孩子眼睛的位置。(其实这是个很恐怖的画面……)...
    七七七月鸢阅读 4,463评论 0 2
  • 1.取生花生米一碗(勿洗,勿泡,保持干燥)放入花椒20~30粒,代用。 2.锅至于灶上,放入油(炒菜量即可,勿多)...
    一叶风轻阅读 1,111评论 0 0