美文网首页
socket.gaierror: [Errno -2] Name

socket.gaierror: [Errno -2] Name

作者: 苦庭 | 来源:发表于2020-04-15 17:17 被阅读0次

最近在尝试运行实习的api端python项目,用了swaggerhub这个网站(能够自动进行swagger.yaml的语法检测)配置好了swagger.yaml,然后通过swagger-codegen进行项目代码的生成,上周我成功地将服务器运行了。但是昨天重新测试的时候出现了题目里的socket错误。

socket.gaierror: [Errno -2] Name or service not known

该错误为socket的GetAddrInfo()函数的异常,主要是由于host名称没有在配置文件中指定,因此无法找到对应的IP。可以通过修改hosts文件解决。

我们只要在 /etc/hosts 中进行以下修改。

hosts文件原来是:

127.0.0.1       localhost

反面例子
我一开始添加的是服务器的因特网网络IP以及网址名称

127.0.0.1       localhost
123.4.5.6       foo.bar.com

但是由于服务器网卡绑定的是内网的IP,因此会抛出如下异常

socket.error: [Errno 99] Cannot assign requested address

反面例子结束

《正确做法》
只需要在下一行加上服务器的本地IP以及网址的名称

127.0.0.1       localhost
0.0.0.0         foo.bar.com

重新启动服务,即可访问服务器页面。

相关文章

网友评论

      本文标题:socket.gaierror: [Errno -2] Name

      本文链接:https://www.haomeiwen.com/subject/zbthvhtx.html