如何通过HTTPS而不是HTTP运行我的Eve应用?
答案 0 :(得分:5)
如果您正在考虑直接运行您的Eve应用程序,没有像nginx,apache等真正的Web服务器,那么这样的事情就可以了:
import ssl
context = ssl.SSLContext(ssl.PROTOCOL_TLSv1_2)
context.load_cert_chain('yourserver.crt', 'yourserver.key')
app.run(ssl_context=context, debug=True)
或者:
from OpenSSL import SSL
context = SSL.Context(SSL.SSLv23_METHOD)
context.use_privatekey_file('yourserver.key')
context.use_certificate_file('yourserver.crt')
app.run(ssl_context=context, debug=True)
现在,这两个选项可能都适合使用您自己的证书进行测试。你也可以采取adhoc
shourtcut(可能需要安装pyopenssl
):
app.run(ssl_context='adhoc', debug=True)
请记住,您并不想在生产中运行此功能。您需要一台合适的服务器来执行此操作,并且所有这些服务器都提供了有关如何为应用程序设置安全连接的正确文档。