小编And*_*eno的帖子

Flask - 为什么有些端点不是 HTTPS?

我正在使用 Flask 构建一个网络应用程序。目前我使用 Gunicorn 为应用程序提供服务,使用 nginx 作为反向代理。Chrome 开发工具抱怨一个端点不是 HTTPS:

混合内容:“ https://example.com:88/ ”上的页面已通过 HTTPS 加载,但请求了不安全的 XMLHttpRequest 端点“ http://example.com/geo2?coordinates= ”。此请求已被阻止;内容必须通过 HTTPS 提供。

在 app.py 中,我为 Flask 设置了 HTTPS:

context = ('ssl/server.crt', 'ssl/server.key')
app.run(host='0.0.0.0', port=443, ssl_context=context, threaded=True, debug=True)
Run Code Online (Sandbox Code Playgroud)

我正在执行 gunicorn :

gunicorn --bind 0.0.0.0:8282 app:app
Run Code Online (Sandbox Code Playgroud)

我的 nginx 配置(为简洁起见省略了所有 SSL 设置):

server {
    listen 88 ssl;
    server_name example.com www.example.com;
    root /var/www/app/;
    index index.html;

location / {
    proxy_pass         http://192.168.1.5:8282/;
    proxy_redirect     off;
    proxy_set_header   X-Real-IP $remote_addr;
    proxy_set_header   X-Forwarded-Host $server_name;
           }
}
Run Code Online (Sandbox Code Playgroud)

我注意到我只看到一个端点 /geo2 的错误。我的应用程序设置为在 /geo 收到 POST …

python https nginx flask gunicorn

1
推荐指数
1
解决办法
2219
查看次数

标签 统计

flask ×1

gunicorn ×1

https ×1

nginx ×1

python ×1