lets encrypt 安装报错 ImportError: No module named _markerlib

《flask web开发实战》第572页强烈推荐 ssl 证书,于是根据网上的 lets encrypt 教程 如何使用CentOS 7上的Let’s Encrypt来保护Nginx 在 centos7 云服务器上安装 ssl 证书的时候遇到如下问题:

然后在网上搜了各种答案,大部分的解决方法是执行如下操作:
easy_install distribute
pip install --upgrade distribute

(还有一些方法是重装 pip 和 setuptools 。都尝试过,均无效。)

然后又出现了问题:

在然后根据系统提示执行 pip install --upgrade pip 之后又出现了上图提示的错误信息,变成了死循环。

请问大家有遇到过相同问题吗?如果有的话能提供解决方案吗?
——————————————————————————————————————————
python版本是2.7.5
解决这个问题的途中试过很多网上的方法,包括但不限于

pip install python-pip
pip install --upgrade setuptools
pip install --upgrade pip
pip install --upgrade distribute
easy_install -U setuptools
python -m pip install --upgrade pip

查阅解决方法的过程中比较有道理的说法是,easy_install 和 pip install 重复安装同一个 python 模块,有可能导致 python pip install 原有路径被更改导致的错误。

请参考置顶贴了解如何正确提问,至少要包含的信息是:

  • 你的 Python 版本
  • 完整的错误回溯,使用纯文本提供,而不是截图(这样别人就不用一点一点打出你的错误信息去搜索)
  • 报错之前执行的命令或操作

看提示你的 pip 版本很低(8.1.2),并没有更新成功?可以试试下面的命令:

sudo python -m pip install -U pip setuptools

出现了这样的错误提示:

噢,忘记了,pip 最新版本不再支持 Python 2,可以试下:

sudo python -m pip install -U pip==20.3.4

如果你的 pip 已经被卸载,可以用:

sudo easy_install pip==20.3.4

或是:

wget https://bootstrap.pypa.io/2.7/get-pip.py
python get-pip.py

详见:

(麻烦不要再使用截图提供代码、错误回溯、命令行输出等信息,而要使用纯文本,原因前面已经说过)

关于(麻烦不要再使用截图提供代码、错误回溯、命令行输出等信息,而要使用纯文本,原因前面已经说过)
不好意思,因为太过着急解决问题只顾想着怎么尽快找到方法,没注意看发帖说明。
这是我第一次发含图片的帖子。我会改掉这个习惯的。
谢谢你提供的解决方案,这是今天运行成功的第一行有意义的命令操作。 :sob:

1 Like