无法启动开发服务器绑定错误:找不到一致的端口localhos

2024-06-22 10:34:01 发布

您现在位置:Python中文网/ 问答频道 /正文

谷歌应用引擎开发服务器运行良好昨天,但当我试图启动它今天。它只会说出这个错误。

我试图使用lsof -i:8080/lsof -i:8000来确保这些端口没有被占用。 我还尝试使用--port arg切换到另一个端口。 我甚至删除了gae文件夹并安装了一个新的。 --一点运气也没有。

也许有一个明显的解决办法,但我看不出来。

这是“哦,我的上帝”的跟踪堆栈。。

Traceback (most recent call last):
File "/home/henry/software/google_appengine/dev_appserver.py", line 182, in <module>
        _run_file(__file__, globals())
File "/home/henry/software/google_appengine/dev_appserver.py", line 178, in _run_file
        execfile(script_path, globals_)
File "/home/henry/software/google_appengine/google/appengine/tools/devappserver2/devappserver2.py", line 689, in <module>
        main()
File "/home/henry/software/google_appengine/google/appengine/tools/devappserver2/devappserver2.py", line 682, in main
        dev_server.start(options)
File "/home/henry/software/google_appengine/google/appengine/tools/devappserver2/devappserver2.py", line 653, in start
        apis.start()
File "/home/henry/software/google_appengine/google/appengine/tools/devappserver2/api_server.py", line 152, in start
        super(APIServer, self).start()
File "/home/henry/software/google_appengine/google/appengine/tools/devappserver2/wsgi_server.py", line 294, in start
        raise BindError('Unable to find a consistent port %s' % host)
    google.appengine.tools.devappserver2.wsgi_server.BindError: Unable to find a consistent port localhost
    Exception in thread Thread-4 (most likely raised during interpreter shutdown):
    Traceback (most recent call last):
      File "/usr/lib/python2.7/threading.py", line 810, in __bootstrap_inner
      File "/usr/lib/python2.7/threading.py", line 763, in runhenry@henry-A

Tags: inpymosthomeserverportgoogleline
3条回答

这可能是由hosts文件中“localhost”的多个条目引起的。

例如在文件/etc/hosts中:

127.0.0.1 localhost
127.0.0.1 mymachinename localhost

如果删除所有映射(只有一个用于localhost),则问题有望得到解决。

127.0.0.1 mymachinename localhost

这是一个已知的问题,据我所知,它将在未来的版本中得到纠正。

在尝试在不同的端口上运行或使用不同的主机之前,我从未见过这样的情况:

dev_appserver.py /path/to/project --port 8888 --host 127.0.0.1

为主机添加当前IP地址的位置。

与发布的内容类似,我也遇到了这个问题,并通过修改hosts文件解决了这个问题。问题是IPv6地址重定向到本地主机:

在我的主机文件里

127.0.0.1    localhost
::1          localhost 
fe80::1%lo0  localhost

我评论了IPv6地址

127.0.0.1     localhost
#::1          localhost 
#fe80::1%lo0  localhost

我不确定这是否是一个可行的永久性解决方案,因为我认为让localhost的IPv6数字地址位于hosts文件中很重要,但在发布正确的修复程序之前,它现在可以工作。

相关问题 更多 >