绑定错误:无法为localhost找到一致的端口
抱歉再次提这个问题,我看到之前有人问过这个问题,但没有得到答案,我现在还是遇到这个问题。我不知道怎么重新提问。 :)
我在本地运行Google App Engine开发服务器时,偶尔会遇到一些问题。我想强调的是,这些问题是偶发的,我很难搞清楚问题出在哪里。我使用的是Mac OS X Mavericks。
我主要在两个地方工作,以前在这两个地方都能正常运行,现在只有一个地方出现问题。我尝试过一些简单的操作,比如切换有线和无线网络,甚至在没有互联网的情况下运行。
我运行了
dev_appserver.py ShoppingList/
然后得到了以下输出
INFO 2014-10-29 20:19:40,423 devappserver2.py:733] Skipping SDK update check.
WARNING 2014-10-29 20:19:40,427 api_server.py:383] Could not initialize images API; you are likely missing the Python "PIL" module.
WARNING 2014-10-29 20:19:40,428 simple_search_stub.py:1098] Could not read search indexes from /var/folders/0x/6w6yzwhx28780kdnwpqdz2dc0000gn/T/appengine.husk-lige.mortenmedici/search_indexes
Traceback (most recent call last):
File "/Users/mortenmedici/Directory to extract under (this will create a directory google-cloud-sdk) /Users/mortenmedici install_dst/google-cloud-sdk/platform/google_appengine/dev_appserver.py", line 82, in <module>
_run_file(__file__, globals())
File "/Users/mortenmedici/Directory to extract under (this will create a directory google-cloud-sdk) /Users/mortenmedici install_dst/google-cloud-sdk/platform/google_appengine/dev_appserver.py", line 78, in _run_file
execfile(_PATHS.script_file(script_name), globals_)
File "/Users/mortenmedici/Directory to extract under (this will create a directory google-cloud-sdk) /Users/mortenmedici install_dst/google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/devappserver2.py", line 986, in <module>
main()
File "/Users/mortenmedici/Directory to extract under (this will create a directory google-cloud-sdk) /Users/mortenmedici install_dst/google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/devappserver2.py", line 979, in main
dev_server.start(options)
File "/Users/mortenmedici/Directory to extract under (this will create a directory google-cloud-sdk) /Users/mortenmedici install_dst/google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/devappserver2.py", line 778, in start
apis.start()
File "/Users/mortenmedici/Directory to extract under (this will create a directory google-cloud-sdk) /Users/mortenmedici install_dst/google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/api_server.py", line 170, in start
super(APIServer, self).start()
File "/Users/mortenmedici/Directory to extract under (this will create a directory google-cloud-sdk) /Users/mortenmedici install_dst/google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/wsgi_server.py", line 314, in start
raise BindError('Unable to find a consistent port for %s' % host)
google.appengine.tools.devappserver2.wsgi_server.BindError: Unable to find a consistent port for localhost
我尝试过其他答案中关于BindError的解决方案:应用程序无法在GAE上运行 - '无法绑定到localhost:0'
启动开发服务器失败 -- BindError: 无法找到一致的端口localhost我没有其他服务器实例在运行,我的/etc/hosts中只有一个localhost,换一个端口也没有帮助。
注意,错误只出现在'localhost'上,而不是'localhost:0'或其他特定端口,这在其他问题中是有提到的。我不知道这是否提供了任何信息。
非常感谢任何帮助。
2 个回答
1
最近我遇到了一个问题。首先,我用“lsof -i :8080”这个命令来查找是否有程序已经占用了这个8080端口,但问题还是没解决。
后来我发现问题出在/etc/hosts文件上。这个文件是空的。填充了一些内容后,问题依然存在。只有在把文件的权限改成644后,才正常工作。所以……
sudo chmod 644 /etc/hosts
如果这对你有帮助,请告诉我。
1
你有没有看过这个问题? 这个问题看起来是个已知的bug,可能是因为你的hosts文件里有多个关于'localhost'的条目导致的。