flask 与https

         https相比于http更加安全,那么用flask写出来的web程序如何支持https呢?可以非常肯定的讲,flask本身只是一个网络框架,因此,仅在flask上做手术是不能美容出一个可以支持https的web程序的。通常,flask在部署时,会用到nginx或者apache,这类服务器则是可以通过配置ssl文件,来让flask写出来的web程序支持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来访问了。代码是我从一个项目里直接摘抄过来的,没来得及修改,但不难看得懂。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

酷python

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值