我已安装此https://github.com/andybak/django-backup
App只提供backup
管理命令
我做什么:
1。 $ python manage.py backup
一切都很好。备份已创建!
2。 $ python manage.py shell
from django.core.management import call_command
call_command('backup')
一切都很好。备份已创建!
3。我创建了视图:
from django.core.management import call_command
def backup(request): # /admin/backup/
call_command('backup')
return redirect(request.META.get('HTTP_REFERER'))
4。 $ python manage.py runserver 0.0.0.0:9999
转到浏览器 mywebsite.com:9999/admin/backup /
一切都很好。备份已创建!
5. 但是当我通过nginx + gunicorn + supervisord运行我的网站并转到浏览器 mywebsite.com/admin/backup / 时 - 备份文件为空。< / p>
也许这完全取决于权限?请帮忙。
Django 1.7
修改
6。 /var/env/project/bin/gunicorn core.wsgi -b 0.0.0.0:9999 --user=root --group=root
并转到浏览器 mywebsite.com:9999/admin/backup /
一切都很好。备份已创建!
/etc/supervisord.conf:
[program:project]
command=/var/env/project/bin/gunicorn core.wsgi -b 0.0.0.0:8000 --user=root --group=root
directory=/var/www/project/
environment=PATH="/var/env/project/bin/activate",DJANGO_SETTINGS_MODULE="core.settings_prod"
user=root
autostart=true
autorestart=true
redirect_stderr=true
答案 0 :(得分:0)
知道了! supervisord.conf environment=PATH=
中的错误应该是environment=PYTHONPATH=
environment=PYTHONPATH="/var/env/project/bin/activate",DJANGO_SETTINGS_MODULE="core.settings_prod"