如何修复Apache服务器(Windows)中的导入SSL错误

时间:2019-05-09 17:47:17

标签: windows apache ssl flask mod-wsgi

我正在尝试在 Apache 服务器上使用 mod_wsgi 使用Flask应用程序设计RESTful API,并且导入时遇到错误 Apache 服务器中的ssl 模块。 我已经从https://www.apachelounge.com/download/安装了Apache 2.4,并使用pip安装了mod_wsgi,并在Apache服务器中对其进行了配置。

我创建了一个简单的Flask应用程序:

    from flask import Flask   '
app = Flask(__name__)
    @app.route("/")
    def hello():
        return "Hello World"
    if __name__ == "__main__":
        app.run()

我创建了一个web.wsgi文件:

    import sys 
sys.path.insert(0, 'C:/Users/chant/myapp')
from final_app import app as application

并通过将以下代码粘贴到http-vhosts.conf中,使用它为Flask App配置虚拟主机:

<VirtualHost *:5000>
    ServerName  localhost
    WSGIScriptAlias / "C:/Users/chant/myapp/web.wsgi"
    DocumentRoot "C:/Users/chant/myapp"
ErrorLog "C:/Users/chant/myapp/logs/error.log"
    CustomLog "C:/Users/chant/myapp/logs/access.log" common

我的错误日志显示:

    File "c:\\programdata\\anaconda3\\Lib\\ssl.py", line 98, in <module>\r
    import _ssl             # if we can't import it, let the error propagate\r
ImportError: DLL load failed: The specified module could not be found.\r

尽管我尝试测试了导入模块,并且它是在python中运行的,但是它并未在Apache服务器中导入。

如果有人有任何建议,将不胜感激。

1 个答案:

答案 0 :(得分:0)

稍后我注意到,Flask应用程序部署的重要部分是应为所有用户安装Python,否则Apache服务器将无法导入ssl模块。

希望这会有所帮助!