学书才浅 2022-02-21 16:19 采纳率: 60%
浏览 81
已结题

【flask+宝塔】我在云服务器上,想做一个https协议的“https://域名:端口号”这样的网站,最好是在宝塔面板上设置

我想要达到的结果

实现这个页面是为了满足微信小程序api要求:

  • 不能出现ip
  • 必须要是https协议

更详细的问题描述

  • 使用的是flask框架,现在能通过在宝塔上部署一个直接通过 “http://公网ip:端口号" 访问的页面
  • 域名已经解析到公网上,但是通过 ”http://域名:端口号“ 的方式也无法访问页面【会自动转成https协议,威森莫呢❓】

我的思路和尝试过的方法

我有个大概的概念:

  • https和http协议不同所以需要在宝塔(或者flask)上整一个ssl的证书
  • 宝塔上部署flask和直接运行python3 app.py有区别
  • 云服务器教程里说的‘进nginx/conf改配置’和‘【在宝塔界面配置ssl】'应该是两种不同的方法
  • 还有的说什么iis配置什么的,我感觉应该没那么复杂
尝试的方法

搜不同关键词总能出来不同的答案,大概试下来有这么几个感觉希望最大的(但是都失败了)

1.在flask里面直接配置ssl_context

  • 我看到至少两位答主说可以通过ssl_context这个参数解决,但是很遗憾、
  • 我觉得这应该是直接在flask上完成的(也就是跟宝塔面板无关),如果这个方法真的管用,是不是我应该一直保持这个程序在运行状态? 另外,如果我用域名访问它,是不是还要内网穿透什么的

app.run(debug=True, host='0.0.0.0', ssl_context=('your_ssl.pem', 'your_ssl.key'))

2.python+flask子域名访问设置

在方法1的基础上,加上了:

通过”给子域名添加DNS解析 + 子域名ssl证书申请+代码修改“的方法

#coding:utf8
#创建一个子域名
from flask import Blueprint
 
api = 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.com
    app.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'))  

[参考博主dyingstraw代码]

一些小问题

  1. 是否需要内网穿透

  2. 为什么http://域名会自动转为https,能不能在宝塔上实现访问http://域名:端口和IP:端口达到同样的效果

以上

  • 写回答

5条回答 默认 最新

  • 在下月亮有何贵干 前端领域优质创作者 2022-02-21 16:29
    关注

    我用nginx,我只知道nginx容易的要死。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

问题事件

  • 系统已结题 3月23日
  • 已采纳回答 3月15日
  • 创建了问题 2月21日

悬赏问题

  • ¥20 修改光猫sn的时候提示失败
  • ¥15 java大作业爬取网页
  • ¥15 怎么获取欧易的btc永续合约和交割合约的5m级的历史数据用来回测套利策略?
  • ¥15 有没有办法利用libusb读取usb设备数据
  • ¥15 为什么openeluer里面按不了python3呢?
  • ¥15 关于#matlab#的问题:训练序列与输入层维度不一样
  • ¥15 关于Ubuntu20.04.3LTS遇到的问题:在安装完CUDA驱动后,电脑会进入卡死的情况,但可以通过键盘按键进入安全重启,但重启完又会进入该情况!
  • ¥15 关于#嵌入式硬件#的问题:树莓派第一天重装配置python和opencv后第二天打开就成这样,瞎捣鼓搞出来文件夹还是没把原来的界面调回来
  • ¥20 Arduino 循迹小车程序电路出错故障求解
  • ¥20 Arduino 循迹小车程序电路出错故障求解