终极指南如何搭建个人 Anki-Sync-Server 实现数据隐私保护【免费下载链接】anki-sync-serverA personal Anki sync server (so you can sync against your own server rather than AnkiWeb)项目地址: https://gitcode.com/gh_mirrors/ank/anki-sync-server想要完全掌控自己的学习数据吗厌倦了将珍贵的记忆卡片数据存储在第三方服务器上本文将为您提供完整的个人 Anki-Sync-Server 搭建指南让您拥有自己的私有同步服务器实现数据完全自主控制为什么需要个人 Anki 同步服务器Anki 是一款强大的开源记忆卡片软件但默认情况下它通过 AnkiWeb 进行数据同步。这意味着您的所有学习数据都存储在第三方服务器上。搭建个人 Anki-Sync-Server 不仅能保护您的数据隐私还能让您完全掌控数据所有学习记录都保存在自己的服务器上离线同步在局域网内无需互联网即可同步数据⚡自定义配置根据需求调整服务器性能参数免费使用摆脱 AnkiWeb 的存储限制快速安装个人 Anki-Sync-Server准备工作安装依赖首先确保您的系统已安装 Python 和必要的工具# 安装 pip如果尚未安装 sudo apt-get install python3-pip # 安装虚拟环境工具 pip3 install virtualenv创建虚拟环境为了避免依赖冲突建议在虚拟环境中安装# 创建虚拟环境 virtualenv AnkiServer.env # 激活虚拟环境 source AnkiServer.env/bin/activate安装 Anki-Sync-Server现在可以通过 pip 直接安装最新版本pip install AnkiServer或者从源码安装以获得最新功能# 克隆仓库 git clone https://gitcode.com/gh_mirrors/ank/anki-sync-server # 进入项目目录 cd anki-sync-server # 安装依赖 pip install webob PasteDeploy PasteScript sqlalchemy simplejson # 生成 egg 信息文件 python setup.py egg_info配置您的个人同步服务器1. 复制并编辑配置文件将示例配置文件复制为生产配置文件cp example.ini production.ini打开production.ini文件进行配置。关键配置项包括[server:main] host 0.0.0.0 # 监听所有网络接口 port 27701 # 默认端口 [app:rest_app] data_root ./collections # 数据存储目录 allowed_hosts 127.0.0.1 # 允许访问的主机 [app:sync_app] data_root ./collections base_url /sync/ base_media_url /msync/ session_db_path ./session.db auth_db_path ./auth.db2. 创建用户账户使用控制脚本创建同步用户./ankiserverctl.py adduser myusername系统会提示您设置密码请务必记住这个密码因为您需要在 Anki 客户端中使用它。3. 测试服务器运行在调试模式下启动服务器进行测试./ankiserverctl.py debug如果一切正常您会看到服务器成功启动的信息。按 CtrlC 停止调试模式然后正式启动./ankiserverctl.py start要停止服务器使用./ankiserverctl.py stop配置 Anki 桌面客户端创建自定义同步插件在 Anki 的插件目录中创建mysyncserver.py文件import anki.sync anki.sync.SYNC_BASE http://127.0.0.1:27701/ anki.sync.SYNC_MEDIA_BASE http://127.0.0.1:27701/msync/重要提示将127.0.0.1替换为您的服务器 IP 地址。如果您在局域网内其他设备上使用请使用服务器的局域网 IP。TLS/SSL 证书配置可选如果需要 HTTPS 加密连接可以添加证书验证# 证书路径相对于 Anki/addons 目录 CERTPATH server.pem # 重写 TLS 证书路径 httpCon_anki anki.sync.httpCon def httpCon_patch(): import os.path conn httpCon_anki() conn.ca_certs os.path.join(os.path.dirname(__file__), CERTPATH) return conn anki.sync.httpCon httpCon_patch配置移动端同步AnkiDroid 设置从 AnkiDroid 2.6 开始可以直接在设置中配置自定义同步服务器打开设置菜单进入高级部分点击自定义同步服务器启用使用自定义同步服务器设置同步 URL 为http://您的服务器IP:27701/sync/设置媒体同步 URL 为http://您的服务器IP:27701/msync/临时环境变量方法Linux/Mac如果您只想临时使用个人服务器可以设置环境变量export SYNC_URLhttp://127.0.0.1:27701/sync/ ./runanki 生产环境部署建议使用 Supervisor 管理进程对于生产环境建议使用 Supervisor 来管理 Anki-Sync-Server# 安装 Supervisor sudo apt-get install supervisor # 复制配置文件 sudo cp supervisor-anki-server.conf /etc/supervisor/conf.d/anki-server.conf # 编辑配置文件适配您的环境 sudo nano /etc/supervisor/conf.d/anki-server.conf # 重新加载配置 sudo supervisorctl reload # 查看日志 sudo supervisorctl tail anki-server反向代理配置Nginx如果您希望通过域名访问可以配置 Nginx 反向代理server { listen 80; server_name anki.yourdomain.com; location / { client_max_body_size 0; proxy_pass http://127.0.0.1:27701; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } }数据备份与迁移备份您的学习数据所有用户数据都存储在collections目录中。定期备份此目录# 备份数据 tar -czf anki-backup-$(date %Y%m%d).tar.gz collections/ # 恢复数据 tar -xzf anki-backup-20250101.tar.gz从 AnkiWeb 迁移数据在 Anki 桌面客户端中同步到 AnkiWeb配置连接到您的个人服务器执行同步操作数据会自动迁移到您的服务器故障排除与维护常见问题解决问题1连接被拒绝检查防火墙设置sudo ufw allow 27701确认服务器正在运行./ankiserverctl.py status问题2同步失败检查用户名和密码是否正确确认服务器配置中的allowed_hosts包含客户端 IP问题3性能问题调整production.ini中的线程数配置考虑使用更强大的硬件或优化数据库日志查看查看服务器日志以诊断问题# 查看实时日志 tail -f /var/log/anki-server.log # 或通过 Supervisor sudo supervisorctl tail anki-server高级功能扩展RESTful API 使用Anki-Sync-Server 提供了完整的 RESTful API您可以通过 AnkiServer/apps/rest_app.py 查看所有可用端点GET /api/decks- 获取所有牌组列表POST /api/decks- 创建新牌组GET /api/decks/{id}/cards- 获取牌组中的卡片自定义插件开发您可以根据需要扩展服务器功能。查看 AnkiServer/init.py 了解核心架构或参考 tests/ 目录中的测试用例来了解如何编写自定义功能。安全最佳实践1. 使用强密码为每个用户设置复杂密码避免使用默认或简单密码。2. 限制访问在生产环境中将allowed_hosts设置为具体的 IP 地址而不是0.0.0.0。3. 启用 HTTPS为服务器配置 SSL 证书保护数据传输安全。4. 定期更新关注项目更新及时应用安全补丁。总结通过搭建个人 Anki-Sync-Server您不仅获得了数据隐私保护还获得了完全的控制权。无论是个人使用还是团队协作这个解决方案都能满足您的需求。现在就开始搭建属于您自己的 Anki 同步服务器吧记住数据自主权是数字时代最重要的权利之一。拥有自己的同步服务器意味着您的学习数据永远掌握在您自己手中下一步行动✅ 安装 Python 和依赖✅ 配置虚拟环境✅ 安装 Anki-Sync-Server✅ 配置服务器设置✅ 连接 Anki 客户端✅ 开始安全同步如果您在搭建过程中遇到任何问题可以参考项目中的详细文档或查看示例配置文件。祝您搭建顺利【免费下载链接】anki-sync-serverA personal Anki sync server (so you can sync against your own server rather than AnkiWeb)项目地址: https://gitcode.com/gh_mirrors/ank/anki-sync-server创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考