一、pip安装Django
python版本3.7.0,pip install Django==3.0 时一直报以下错误,
1.看最后一行知道是网络超时
pip._vendor.urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(host='files
.pythonhosted.org', port=443): Read timed out.
2.为什么会超时呢?这个问题请教了别人,需要追溯到域名访问,DNS解析过程,上大佬的图一张,终端每次解析域名的大致顺序:本地缓存 -> 本地DNS(hosts) -> 上级DNS server -> 上上级DNS server......,只要取到了就原路返回 并在每个节点做缓存
根据下图查看,通过DNSserver获取的ip在遥远的他国,这就是访问files.pythonhosted.org慢(超时)的根本原因,我们得想办法配置一个近点的ip地址提升访问速度,于是找国内的ip配置到windows的hosts中试下
3.Windows下修改hosts,根据以下链接修改(https://www.cnblogs.com/jerry...)
4.修改完成后尝试链接并ping下ip
telnet files.pythonhosted.org 443
连接成功
ping files.pythonhosted.org
数据传输还是有丢失
4.尝试再换一个ip,发现丢失为0,更换hosts中files.pythonhosted.org对应的ip,
5.pip install Django==3.0 安装成功
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。