运行web的python脚本时出现以下错误
Traceback (most recent call last):
File "SampleWSTest.py", line 10, in <module>
from web.wsgiserver.ssl_builtin import BuiltinSSLAdapter
File "C:\Python27\lib\site-packages\web\wsgiserver\ssl_builtin.py", line 14, in <module>
from cherrypy import wsgiserver
ImportError: cannot import name wsgiserver在python 2.7.15上运行
import web
import sys
import argparse
import traceback
from web.wsgiserver import CherryPyWSGIServer
from web.wsgiserver.ssl_builtin import BuiltinSSLAdapter
from OpenSSL import SSL
class Healthcheck:
def GET(self):
return 'Yassssssssss !!!!!'
URLS = ('/svc/healthcheck', 'Healthcheck')
CherryPyWSGIServer.ssl_certificate = 'alice.crt'
CherryPyWSGIServer.ssl_private_key = 'alice.key'
if __name__ == '__main__':
CherryPyWSGIServer.ssl_adapter = BuiltinSSLAdapter(CherryPyWSGIServer.ssl_certificate, CherryPyWSGIServer.ssl_private_key)
CherryPyWSGIServer.ssl_adapter.context = SSL.Context(SSL.SSLv23_METHOD)
CherryPyWSGIServer.ssl_adapter.context.set_options(SSL.OP_NO_SSLv3)
CherryPyWSGIServer.ssl_adapter.context.use_certificate_file(CherryPyWSGIServer.ssl_certificate)
CherryPyWSGIServer.ssl_adapter.context.use_privatekey_file(CherryPyWSGIServer.ssl_private_key)
app = web.application(URLS, globals())
app.run()在我们不得不禁用ssl 2和ssl 3之后,它开始失败,所以不得不添加ssl_adapter,但BuiltinSSLAdapter导入失败。如果有其他选择,请提出建议。基本上我想禁用ssl 2和ssl 3之前我们没有from web.wsgiserver.ssl_builtin import BuiltinSSLAdapter from OpenSSL import SSL
发布于 2019-12-17 21:18:06
CherryPy于2017年将wsgiserver转移到cheroot。
http://docs.cherrypy.org/en/latest/history.html#v9-0-0
所以现在你需要像这样导入它:
from cheroot.wsgi import Server as CherryPyWSGIServer或者从头到尾都重命名。
https://stackoverflow.com/questions/59372836
复制相似问题