提问人:A-KR 提问时间:5/16/2023 最后编辑:A-KR 更新时间:6/17/2023 访问量:344
如何使用nginx通过https运行Prefect?
How to run Prefect over https with nginx?
问:
我有一台运行 CentOS 7 的服务器。在此服务器上,安装了 Prefect,并通过端口 4200 运行。我通过 http://localhost:4200/xyz 访问 Prefect。我想通过https运行Prefect。因此,目标是能够调用 https://localhost/4200/xyz 并访问 Prefect UI。 一种可能的方法是在服务器上安装 nginx 并创建自签名证书。
所以这是我所做的:
- 百胜餐饮集团安装 nginx
- systemctl 启动 nginx
- systemctl 启用 nginx
- 纳米 /etc/nginx/conf.d/prefect.conf
prefect.conf文件:
server {
listen 80;
server_name localhost-ip;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name localhost-ip;
ssl_certificate /etc/nginx/cert/nginx.crt;
ssl_certificate_key /etc/nginx/cert/nginx.key;
location / {
proxy_pass http://localhost-ip:4200;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
- systemctl 重启 nginx
- 现在,当我进入 http://localhost 时,如果我信任该网站,就会发出警告。我说是的,现在我 https://localhost。它通常应该打开 Prefect UI,但我有一个 502“Bad Gateway nginx/1.20.1”错误
有谁知道我如何通过 502 错误并实现我的目标?
答:
0赞
genegc
6/17/2023
#1
该设置对我有用。如果我没有运行完美的服务器,我只会得到 502。确保像这样启动服务器:
prefect server start --host 0.0.0.0
顺便说一句,您还需要修改
PREFECT_API_TLS_INSECURE_SKIP_VERIFY
PREFECT_API_URL
PREFECT_UI_API_URL
PREFECT_UI_URL
评论