
宝塔面板6.9.3申请let’s encrypt证书出错 – No module named requests
全新安装的宝塔面板6.9.3用文件验证的方式取申请SSL证书的时候出错,信息如下:
{
"msg": "签发失败,我们无法验证您的域名:1、检查域名是否绑定到对应站点
2、检查域名是否正确解析到本服务器,或解析还未完全生效
3、如果您的站点设置了反向代理,或使用了CDN,请先将其关闭
4、如果您的站点设置了301重定向,请先将其关闭
5、如果以上检查都确认没有问题,请尝试更换DNS服务商
",
"status": false,
"result": [
"",
"Traceback (most recent call last):
File "/www/server/panel/class/letsencrypt.py", line 24, in
import argparse, subprocess, json, os, sys, base64, binascii, time, hashlib, re, copy, textwrap, logging, requests
ImportError: No module named requests
"
],
大鸟抓包了这个错误,丢一张图看看:
明显是缺少了 requests 模块,在linux终端手动安装 requests 模块以后,运行正常。不知道是不是大鸟自己遇到这个问题还是什么,这篇文章看看如何解决这个问题:
一:安装 requests 模块
我们用SSH连接服务器或者就用宝塔终端来安装 requests 模块:
看看安装的截图:
用命令[code]pip list [/code]显示是否安装,看图:
之后,我们用文件验证的方式取申请就顺利申请成功。
二:dns申请
我们可用dns申请的方式试试看,如果可以申请,则用dns申请,然后切回文件验证的方式申请,大鸟发现又可以申请了,大鸟在网上一通搜索,发现了可能有两个问题引起的:
究其原因,大鸟认为还是宝塔面板python环境的混乱的引起的这个问题,用命令来查看:
ls /usr/bin/
丢一张图:
发现确实有多个python。
三:总结
有可能我们会遇到No module named requests的错误,多数原因是python环境的混乱引起的,不过,我们依然可以安装 requests 模块来解决这个问题。
或者我们用dns申请的方式试试看,最后可用acme来申请试试看。


