首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在SSL上运行Flask/Python3.x?

如何在SSL上运行Flask/Python3.x?
EN

Stack Overflow用户
提问于 2020-06-11 16:04:13
回答 1查看 51关注 0票数 0

当我加载页面时,浏览器显示“无法访问此站点”

我的代码:

代码语言:javascript
复制
from flask import Flask, request, jsonify

app = Flask(__name__)

@app.route('/', methods=['GET', 'POST']) 
def route1():
  return f'--- request received ----'

if __name__ == "__main__":
    # https://www.name-of-my-domain.com
    app.run(port='8443', ssl_context=('./mydir/name-of-my-domain.com.crt', './mydir/private.key'))

我也试过了:

代码语言:javascript
复制
from flask import Flask, request, jsonify
from werkzeug.serving import run_simple

app = Flask(__name__)

@app.route('/', methods=['GET', 'POST']) 
def route1():
    return f'--- request received ----'

if __name__ == "__main__":
    # https://www.name-of-my-domain.com
    run_simple('https://www.name-of-my-domain.com/', 8443, app, ssl_context=('./mydir/name-of-my-domain.com.crt', './mydir/private.key'))

还有:

代码语言:javascript
复制
import ssl
# ... as before for app ...
context = ssl.SSLContext(ssl.PROTOCOL_TLSv1_2)
context.load_cert_chain('./mydir/name-of-my-domain.com.crt', './mydir/private.key')
run_simple('https://www.name-of-my-domain.com/', 8443, app, ssl_context=context)

但是对于最后两个,我在运行文件时得到了一个错误:

代码语言:javascript
复制
File "bot.py", line 38, in <module>
    run_simple('https://www.name-of-my-domain.com', 8443, app, ssl_context=context)
  File "/usr/local/lib/python3.6/site-packages/werkzeug/serving.py", line 1052, in run_simple
    inner()
  File "/usr/local/lib/python3.6/site-packages/werkzeug/serving.py", line 1005, in inner
    fd=fd,
  File "/usr/local/lib/python3.6/site-packages/werkzeug/serving.py", line 863, in make_server
    host, port, app, request_handler, passthrough_errors, ssl_context, fd=fd
  File "/usr/local/lib/python3.6/site-packages/werkzeug/serving.py", line 740, in __init__
    HTTPServer.__init__(self, server_address, handler)
  File "/usr/lib64/python3.6/socketserver.py", line 456, in __init__
    self.server_bind()
  File "/usr/lib64/python3.6/http/server.py", line 136, in server_bind
    socketserver.TCPServer.server_bind(self)
  File "/usr/lib64/python3.6/socketserver.py", line 470, in server_bind
    self.socket.bind(self.server_address)
socket.gaierror: [Errno -2] Name or service not known
EN

回答 1

Stack Overflow用户

发布于 2020-06-11 17:17:21

我将其排序为主机'0.0.0.0',并且它可以处理所有三个代码示例('127.0.0.1‘不起作用)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62319750

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档