修复Seahub启动失败:django-pylibmc.memcached未找到
Seafile是非常好的私有云解决方案, 现在我写论文的话, 随时开启Seafile, 使得tex和PDF这两个重要的文件可以在所有设备上保持最新。这样, 我回家后在mac笔记本上可以在学校ubuntu或者windows上写的地方继续写。而且, 要和老师交流的话, 我随时可以在手机/pad上看到最新的版本。是不是非常方便呢?
问题是, 按照官网教程一步一步搭建Seafile服务器后, 我们在启动seahub时可能会碰到如下错误(系统环境:Debian8.0/Seafile6.0.8):
django.core.cache.backends.base.InvalidCacheBackendError: Could not find backend ‘django_pylibmc.memcached.PyLibMCCache’: No module named django_pyibmc.memcached.
这个问题是啥呢?
其实就是他们配置文件中的一个拼写错误。请打开conf/seahub_settings.py
, 找到缓存配置的那一段, 原来是:
1 2 3 4 5 6 |
CACHES = { 'default': { 'BACKEND': 'django_pyibmc.memcached.PyLibMCCache', 'LOCATION': '127.0.0.1:11211', } } |
可以看到, 后台的memcached那一行中pyibmc
应该改成pylibmc
. 再次重启, 即可成功。
后记, 从问题的解决中, 我还发现官方文档说memcached是一个缓存服务, 安装后可以提高系统性能。故上面工作的前提是你已成功安装memcached(官方要求1.0.18以上)并启动memcached。 如果嫌麻烦的话, 完全可以用#
注释掉上面的那一段关于缓存的配置文件, 这是seafile会用默认的缓存。
参考文献
- 官网关于memcached的说明:http://manual-cn.seafile.com/deploy/add_memcached.html
本作品采用创作共用版权协议, 要求署名、非商业用途和保持一致. 转载本站内容必须也遵循署名-非商业用途-保持一致的创作共用协议.
博主啊,我也遇到同样的问题,但是这次配置文件是对的
InvalidCacheBackendError: Could not find backend ‘django_pylibmc.memcached.PyLibMCCache’: No module named django_pylibmc.memcached