gpt4 book ai didi

指定端口时Django runserver错误

转载 作者:行者123 更新时间:2023-12-03 14:38:05 26 4
gpt4 key购买 nike

我最近习惯于在我的 django 项目中执行以下操作,以便我可以在各种操作系统(即非 linux)上测试 bowser 兼容性:

$ sudo ./manage.py runserver 0.0.0.0:80

这使我可以通过网络上的任何机器访问该项目。

但是,我只是设置了一台新机器,此命令发出以下错误:
Traceback (most recent call last):
File "manage.py", line 8, in <module>
from django.core.management import execute_from_command_line
ImportError: No module named django.core.management

我知道 django 无法找到模块,我不明白的是那个普通的旧:
$ sudo ./manage.py runserver

运行良好。我在这里所做的只是改变端口,确定吗?而且,当然,它在过去工作得很好。

注:
1. 我使用的是 Django 1.4
2. 我在 virtualenv 和系统上尝试过,我得到了相同的结果。
3. 我没有在系统范围内安装 django(仅在 virtualenvs 中)

任何帮助将非常感激。

最佳答案

我猜 sudo 命令将在 super 用户上下文中运行该进程,而 super 用户上下文缺少 virtualenv 设置。

您可以尝试在您的 virtualenv 中显式调用 python 二进制文件,例如:

sudo $(which python) manage.py runserver 0.0.0.0:80

制作一个 shell 脚本来设置 virtualenv 并调用 manage.py runserver ,然后改为 sudo 这个脚本。
#!/bin/bash
source /home/darwin/.virtualenvs/foo/bin/activate
cd /path/to/project/foo
python manage.py runserver 0.0.0.0:80

替换 /home/darwin/.virtualenvs/foo使用您实际 virtualenv 的根目录和 /path/to/project/foo与您的项目的根目录。

关于指定端口时Django runserver错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12520743/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com