0

我正在尝试将 Django 与 virtualenv 一起使用。我实际上让 Django hello world 网页显示为 127.0.0.1:8001。后来我不得不做一些小的调整,现在当我尝试再次启动它时它给了我这个错误(我从以前的工作 gunicorn 会话中按 ctrl-Z,所以我认为不是因为这个)。

    user myenv # /opt/myenv/bin/gunicorn -c /opt/myenv/gunicorn_config.py myProject.wsgi
2013-11-02 08:26:37 [27880] [INFO] Starting gunicorn 18.0
2013-11-02 08:26:37 [27880] [ERROR] Connection in use: ('127.0.0.1', 8001)
2013-11-02 08:26:37 [27880] [ERROR] Retrying in 1 second.
2013-11-02 08:26:38 [27880] [ERROR] Connection in use: ('127.0.0.1', 8001)
2013-11-02 08:26:38 [27880] [ERROR] Retrying in 1 second.
2013-11-02 08:26:39 [27880] [ERROR] Connection in use: ('127.0.0.1', 8001)
2013-11-02 08:26:39 [27880] [ERROR] Retrying in 1 second.
^C2013-11-02 08:26:40 [27880] [ERROR] Connection in use: ('127.0.0.1', 8001)
2013-11-02 08:26:40 [27880] [ERROR] Retrying in 1 second.
2013-11-02 08:26:41 [27880] [ERROR] Connection in use: ('127.0.0.1', 8001)
2013-11-02 08:26:41 [27880] [ERROR] Retrying in 1 second.
2013-11-02 08:26:42 [27880] [ERROR] Can't connect to ('127.0.0.1', 8001)
user myenv # 

我最近使用的其他命令包括:

python manage.py syncdb
python manage.py startapp polls

我做了'killall python'以确保它们不是原因。

gunicorn_config.py:

command = '/opt/myenv/bin/gunicorn'
pythonpath = '/opt/myenv/myProject
workers = 1
user = 'tim'

我的项目.wsgi:

import os

# os.environ["DJANGO_SETTINGS_MODULE"] = "myProject.settings"
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "myProject.settings")

from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()
4

3 回答 3

3

ctrl+z停止进程,但不关闭它。因此,它不会释放其端口。您可以使用 恢复该过程fg,然后使用 正确关闭它ctrl+c

于 2013-11-02T13:43:14.993 回答
1

该错误Connection in use: ...基本上意味着即使您退出服务器,该端口仍在使用中。您需要找到当前正在使用该端口的用户并将其关闭。此命令可以帮助您找到那里的人:

$ sudo netstat -nlp | grep :80

然后你可以 sudo 杀死那个进程:

sudo fuser -k 8000/tcp

您应该能够重新启动gunicorn

于 2022-02-06T06:19:40.003 回答
0

端口 8000 可能已绑定,因此无法用于连接。

于 2021-12-27T10:01:15.230 回答