flask 与https
2016-05-18 08:53
309 查看
https相比于http更加安全,那么用flask写出来的web程序如何支持https呢?可以非常肯定的讲,flask本身只是一个网络框架,因此,仅在flask上做手术是不能美容出一个可以支持https的web程序的。通常,flask在部署时,会用到nginx或者apache,这类服务器则是可以通过配置ssl文件,来让flask写出来的web程序支持https的,但我今天要介绍的,则是更简单的方法。
gevent网络库,可以作为flask的wsgi容器,其性能,我没有测试验证过,但感觉还不错,gevent是支持ssl的。
通过上面的设置,你写的网站就可以通过https来访问了。代码是我从一个项目里直接摘抄过来的,没来得及修改,但不难看得懂。
gevent网络库,可以作为flask的wsgi容器,其性能,我没有测试验证过,但感觉还不错,gevent是支持ssl的。
from gevent.wsgi import WSGIServer from app import app keyfilename = None certfilename = None if servermode.mode==0: keyfilename = 'server.key.unsecure' certfilename = 'server.crt' else: keyfilename = os.path.join(config.m_config['sslfile'],'server.key.unsecure') certfilename = os.path.join(config.m_config['sslfile'],'server.crt') http_server = WSGIServer(('0.0.0.0', 5500), app,keyfile=keyfilename,certfile=certfilename) http_server.serve_forever()
如果程序不需要在外网访问,只是内部使用,那么安全证书就完全可以自己来生成,需注意的是,生成key以后,每次启动时都需要填写个什么密码,这很讨厌,但有办法生成一个不需要填写密码的key文件,也就是这个server.key.unsecure,具体方法很简单,百度输入框输入 server.key.unsecure 自行搜索,答案很丰富。</span>
通过上面的设置,你写的网站就可以通过https来访问了。代码是我从一个项目里直接摘抄过来的,没来得及修改,但不难看得懂。
相关文章推荐
- org.apache.tomcat.util.http.Parameters processParameters 信息: Invalid chunk starting at byte [81] and
- 网络TCP建立连接为什么需要三次握手而结束要四次
- mail -s postfix 命令网络应用
- JAVA网络-socket
- JAVA网络-InetAddress类
- JAVA网络-URL
- 20159313网络攻击与防范第十一周学习总结
- 网络协议中STP根桥的选举
- 网络传输层的基本知识
- 网络攻防第十一周总结
- Qt之QTcpServer简单示例
- Java网络编程基础(一)
- http协议的理解
- 在 Ubuntu 16.04 中安装支持 CPU 和 GPU 的 Google TensorFlow 神经网络软件
- XMLHttpRequest Post参数
- http请求中cookies的使用
- java发送http的get、post请求
- php之curl实现http与https请求的方法
- TCP/IP 之 大明王朝邮差
- 【使用Postman测试web接口】管理http请求