目录

综述:

方法1:openssl

准备步骤

具体实施

方法2:阿里云或者宝塔免费申请(推荐)

步骤

1.准备步骤

阿里云

宝塔

python+flask子域名访问设置

1.给子域名添加DNS解析

2.子域名ssl证书申请

.代码修改


综述:

由于业务服务器需要对https协议进行支持,加上代码是python+flask所编写,因此需要去申请ssl的证书。有两种方式:自己使用openssl 命令配置、使用第三方免费的ssl证书。由于自己配置的证书有一定的不稳定性,可能造成不能被浏览器校验通过之类的情况。我个人比较倾向使用阿里云、宝塔的免费ssl认证。接下来,记录两种方式如何操作。并在最后,介绍怎么使用子域名访问网站


方法1:openssl

准备步骤

 pip install pyOpenSSL

具体实施

# 生成私钥,按照提示填写内容
openssl genrsa -des3 -out server.key 1024# 生成csr文件 ,按照提示填写内容
openssl req -new -key server.key -out server.csr# Remove Passphrase from key
cp server.key server.key.org
openssl rsa -in server.key.org -out server.key# 生成crt文件,有效期1年(365天)
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

执行完上述命令,将会生成server.crt和server.key文件。在flask代码中引用即可:

from flask import Flask
app = Flask(__name__)
app.run('0.0.0.0', debug=True, port=8100, ssl_context=('your_path/server.crt', 'your_path/server.key'))  

方法2:阿里云或者宝塔免费申请(推荐)

步骤

1.准备步骤

阿里云

控制台查找域名,如下图,慢慢找。开启证书后,下载下来。

证书内容,需要用到红框中的两个文件

加入到代码中

from flask import Flask
app = Flask(__name__)
app.run('0.0.0.0', debug=True, port=8100, ssl_context=('your_path/XXXX.pem', 'your_path/XXXX.key'))  

宝塔

点这里,需要实名认证,也方便。需要将一个文件放在网站目录下进行验证,跟着操作来不会错,等所有操作结束,等待一会就可以下载证书了。

宝塔文件结构和阿里云文件结构相似,不再赘述。

python+flask子域名访问设置

1.给子域名添加DNS解析

很多平台都可以,不再说了

2.子域名ssl证书申请

详情见上述步骤

3.代码修改

#coding:utf8
#创建一个子域名
from flask import Blueprintapi = Blueprint('api',__name__,subdomain='api')# attention1: 原来是app.route('/')
@api.route('/')
def index():return u'这个是api的首页'@api.route("/login/")
def login():return u'我是登录页面'if __name__="__main__":app = Flask(__name__)   # attention2:你的以及域名,比如bbaidu.comapp.config['SERVER_NAME'] ='bbaidu.com'app.run('0.0.0.0', debug=True, port=8100, ssl_context=('your_path/XXXX.pem', 'your_path/XXXX.key'))  

一阵操作猛如虎,主要注意两个地方,代码中已经注释。主要是改变路由功能。

ok,现在就可以愉快的使用https://api.bbaidu.com/访问你的首页了

如果文章对您有帮助,打上一下呗!

python+flask 配置https网站ssl安全认证相关推荐

  1. 在IIS中使用SSL配置HTTPS网站

    在IIS中使用SSL配置HTTPS网站 由于Windows系统的普及,很多中小企业在自己的网站和内部办公管理系统都是用默认的IIS来做WEB服务器使用.     默认情况下我们所使用的HTTP协议是没 ...

  2. SSL证书配置(https访问接口, 单向认证和双向认证)

    拿到SSL证书后, 如何才能解锁更多玩法? 一. SpringBoots项目配置https访问接口(直接配置) SSL协议 配置步骤 1. 获取证书/ 生成证书 2. 放置证书 3. 配置项目 pro ...

  3. flask配置https

    登录linux机器,centos自带openssl openssl genrsa -des3 -out server.key 1024 openssl req -new -key server.key ...

  4. OpenStack 给nova组件 vnc 配置https(SSL)自验证签名证书

    先说解决办法以及结果 解决办法:Nginx 转发 结果:只转发 生成vnc 的console 地址,拼凑出https,能在Https web应用即可,比如把console url (控制台地址)ifr ...

  5. 阿里云万网虚拟主机安装配置Https(SSL)教程

    太多太多的用户咨询阿里云虚拟主机是否可以安装SSL数字证书?万网空间是否可以支持HTTPS协议访问网站?答案只有一个:目前阿里云虚拟主机都不支持安装SSL证书!但是,但是,可以曲线实现目标! 1.为了 ...

  6. python Flask配置笔记

    好久没写东西了,发现关于系统配置的问题是最蛋疼的,很有必要记录下来.这次主要是搭一个python的服务器,用来跑我自己的Flask应用.由于种种特殊的原因,我选择了win32 Apache加mod_w ...

  7. Python Flask框架-开发简单博客-认证蓝图

    作者:Eason_LYC 悲观者预言失败,十言九中. 乐观者创造奇迹,一次即可. 一个人的价值,在于他所拥有的.可以不学无术,但不能一无所有! 技术领域:WEB安全.网络攻防 关注WEB安全.网络攻防 ...

  8. cdn加速以及前后分离SpringBoot+Vue 配置https及SSL证书

    配置方法同上篇文章一样 CDN加速配置,阿里云cdn内配置好以后即可 剩下把前端服务器nginx内的证书文件上传以及配置写好即可. 后端服务器也同上配置证书下载上传服务器配置好nginx即可. 如果都 ...

  9. 宝塔环境PHP网站要配置HTTPS,SSL证书如何申请

    方法一 宝塔面板自带证书(证书期限只有90天) (1)登录宝塔面板->站点->SSL证书->点击未部署 (2)进入后->选择Let's Encrypt ->选择域名-&g ...

最新文章

  1. Callgrind--函数调用分析工具以及可视化方法
  2. 合唱队形(递增再递减的最长子序列)
  3. 英特尔首款AI芯片终于发布:训练推理两用,历时4年花费5亿美元买来4家公司...
  4. 相关滤波跟踪(MOSSE)
  5. 2020-06-18 CVPR2020 VL论文讨论(1) 笔记
  6. 织梦html编辑器功能在哪,织梦dede自带编辑器替换百度ueditor编辑器
  7. 通信原理包络是什么意思_罗茨鼓风机的应用及原理
  8. 代码生成工具之Winform查询列表界面生成
  9. leetcode 746. 使用最小花费爬楼梯(dp)
  10. Linux 如何通过某一台服务器调用执行多台远程服务器上的脚本,结果显示在本地?...
  11. c语言打砖块代码,打砖块游戏的源代码(请多指教)
  12. PHP文件中定义加载资源文件
  13. 未root的情况下获取墨墨背单词的databases文件夹
  14. SQL 求同比 环比
  15. iptables实现网卡包的转发
  16. 题解-怪盗基德的滑翔翼 c++
  17. 激光切割dxf图案下载
  18. 微信共享停车场小程序开发设计方案
  19. 快速上手百度大脑人体关键点识别
  20. U3D的坑坑洼洼(1)

热门文章

  1. 基于Python实现四大名著章节标注汉语拼音
  2. 【imessage】苹果推送软件安装vim使用自动网络let g:Powerline_colorscheme
  3. jquery表单样式
  4. mysql数据库名忘了_忘了mysql数据库密码,该怎么办???
  5. 码农提高工作效率-黄博文
  6. 磁盘提示磁盘未被格式化要怎么恢复文件
  7. totalcmd热键等介绍
  8. 中国互联网史最大规模合并案 阿里巴巴全资收购UC
  9. 面试官:说出Redis 16 个常见使用场景
  10. ubuntu20.04编译carla0.9.13源码