AttributeError:模块“lib”没有属性“X509_V_FLAG_CB_ISSUER_CHECK”-Python Flask 错误

问题描述 投票:0回答:1

我正在运行一个 Python Flask 应用程序,它使用“pymongo”python 模块连接到 mongodb。

我收到以下错误,但不知道还能做什么来克服它。

应用程序详细信息,(也在虚拟环境中运行应用程序)

  1. 操作系统 - Ubuntu 20.04
  2. openssl 版本:OpenSSL 1.1.1f 2020 年 3 月 31 日
  3. Python版本:3.11.7
  4. pyopenssl版本:23.3.0
  5. pymongo版本:4.6.1
  6. 烧瓶版本:3.0.1

错误:

mod_wsgi (pid=43050): Failed to exec Python script file '/myflaskapp/myflaskapp.wsgi'.
mod_wsgi (pid=43050): Exception occurred processing WSGI script '/myflaskapp/myflaskapp.wsgi'.
Traceback (most recent call last):
  File "/myflaskapp/myflaskapp.wsgi", line 10, in <module>
    from myflaskapp import app as application
  File "/myflaskapp/__init__.py", line 41, in <module>
    from myflaskapp import routes
  File "/myflaskapp/routes.py", line 23, in <module>
    from myflaskapp.helper import *
  File "/myflaskapp/helper.py", line 19, in <module>
    from pymongo import MongoClient
  File "/myflaskapp/myenv/lib/python3.11/site-packages/pymongo/__init__.py", line 93, in <module>
    from pymongo.mongo_client import MongoClient
  File "/myflaskapp/myenv/lib/python3.11/site-packages/pymongo/mongo_client.py", line 62, in <module>
    from pymongo import (
  File "/myflaskapp/myenv/lib/python3.11/site-packages/pymongo/uri_parser.py", line 34, in <module>
    from pymongo.client_options import _parse_ssl_options
  File "/myflaskapp/myenv/lib/python3.11/site-packages/pymongo/client_options.py", line 27, in <module>
    from pymongo.pool import PoolOptions
  File "/myflaskapp/myenv/lib/python3.11/site-packages/pymongo/pool.py", line 79, in <module>
    from pymongo.network import command, receive_message
  File "/myflaskapp/myenv/lib/python3.11/site-packages/pymongo/network.py", line 35, in <module>
    from pymongo import _csot, helpers, message, ssl_support
  File "/myflaskapp/myenv/lib/python3.11/site-packages/pymongo/ssl_support.py", line 25, in <module>
    import pymongo.pyopenssl_context as _ssl
  File "/myflaskapp/myenv/lib/python3.11/site-packages/pymongo/pyopenssl_context.py", line 29, in <module>
    from OpenSSL import SSL as _SSL
  File "/usr/lib/python3/dist-packages/OpenSSL/__init__.py", line 8, in <module>
    from OpenSSL import crypto, SSL
  File "/usr/lib/python3/dist-packages/OpenSSL/crypto.py", line 1553, in <module>
    class X509StoreFlags(object):
  File "/usr/lib/python3/dist-packages/OpenSSL/crypto.py", line 1573, in X509StoreFlags
    CB_ISSUER_CHECK = _lib.X509_V_FLAG_CB_ISSUER_CHECK
AttributeError: module 'lib' has no attribute 'X509_V_FLAG_CB_ISSUER_CHECK'
mod_wsgi (pid=43050): Failed to exec Python script file '/myflaskapp/myflaskapp.wsgi'.
mod_wsgi (pid=43050): Exception occurred processing WSGI script '/myflaskapp/myflaskapp.wsgi'.
Traceback (most recent call last):
  File "/myflaskapp/myflaskapp.wsgi", line 10, in <module>
    from myflaskapp import app as application
  File "/myflaskapp/__init__.py", line 41, in <module>
    from myflaskapp import routes
  File "/myflaskapp/routes.py", line 23, in <module>
    from myflaskapp.helper import *
  File "/myflaskapp/helper.py", line 19, in <module>
    from pymongo import MongoClient
  File "/myflaskapp/myenv/lib/python3.11/site-packages/pymongo/__init__.py", line 93, in <module>
    from pymongo.mongo_client import MongoClient
  File "/myflaskapp/myenv/lib/python3.11/site-packages/pymongo/mongo_client.py", line 62, in <module>
    from pymongo import (
  File "/myflaskapp/myenv/lib/python3.11/site-packages/pymongo/uri_parser.py", line 34, in <module>
    from pymongo.client_options import _parse_ssl_options
  File "/myflaskapp/myenv/lib/python3.11/site-packages/pymongo/client_options.py", line 27, in <module>
    from pymongo.pool import PoolOptions
  File "/myflaskapp/myenv/lib/python3.11/site-packages/pymongo/pool.py", line 79, in <module>
    from pymongo.network import command, receive_message
  File "/myflaskapp/myenv/lib/python3.11/site-packages/pymongo/network.py", line 35, in <module>
    from pymongo import _csot, helpers, message, ssl_support
  File "/myflaskapp/myenv/lib/python3.11/site-packages/pymongo/ssl_support.py", line 25, in <module>
    import pymongo.pyopenssl_context as _ssl
  File "/myflaskapp/myenv/lib/python3.11/site-packages/pymongo/pyopenssl_context.py", line 29, in <module>
    from OpenSSL import SSL as _SSL
  File "/usr/lib/python3/dist-packages/OpenSSL/__init__.py", line 8, in <module>
    from OpenSSL import crypto, SSL
  File "/usr/lib/python3/dist-packages/OpenSSL/crypto.py", line 1553, in <module>
    class X509StoreFlags(object):
  File "/usr/lib/python3/dist-packages/OpenSSL/crypto.py", line 1573, in X509StoreFlags
    CB_ISSUER_CHECK = _lib.X509_V_FLAG_CB_ISSUER_CHECK
AttributeError: module 'lib' has no attribute 'X509_V_FLAG_CB_ISSUER_CHECK'

我已经运行了以下命令,这是解决错误的建议方法。

pip install --upgrade pymongo pyopenssl

还遵循其他文章中的步骤,例如 - AttributeError: module 'lib' has no attribute 'X509_V_FLAG_CB_ISSUER_CHECK'

flask pymongo ubuntu-20.04 pyopenssl python-3.11
1个回答
0
投票

今天遇到了同样的错误,

pip --version

删除Python3 OpenSSL库文件可能会解决问题,但应该使用Ubuntu包管理器正确完成

apt

sudo apt purge python3-openssl
sudo apt autoremove

这似乎是一个老问题了。但仍然 - 希望这有帮助。

© www.soinside.com 2019 - 2024. All rights reserved.