Django:使用sudo在虚拟环境中运行服务器

时间:2017-08-04 03:16:14

标签: python django virtualenv port80

我在我的服务器上安装了Django。

我已经激活了我的虚拟环境,并且我能够在端口8000上成功运行服务器:

python manage.py runserver

我想使用端口80,以便我能够从外部访问(测试)我的应用,所以我使用:

sudo python manage.py runserver

但这给了我一个错误:

Traceback (most recent call last):

      File "manage.py", line 17, in <module>
        "Couldn't import Django. Are you sure it's installed and "
    ImportError: Couldn't import Django. Are you sure it's installed and available on your PYTHONPATH environment variable? Did you forget to activate a virtual environment?

有人可以解释一下原因吗?

2 个答案:

答案 0 :(得分:2)

如果使用virtualenv命令

创建sudo,则会出现此问题

virtualenv是一个可供创建的用户使用的独立环境

因此,如果您在没有python manage.py runserver命令的情况下运行sudo,它将正常运行,

install djangosudo正确并尝试sudo python manage.py runserver

答案 1 :(得分:1)

您可以尝试:

sudo `which python` manage.py runserver
在您的virtualenv内部

从sudo运行django。 希望对您有所帮助。