nginx - 烧瓶重定向在 Nginx 代理上搞砸了
问题描述
开发轻而易举,但投入生产目前是一场噩梦。我所有使用 Flask 的重定向都搞砸了, url_for() 可以在模板上使用,但是每当我必须重定向它失败时,这里就是 nginx 配置
server {
listen 80 ;
listen [::]:80;
server_name 162.240.32.123 planosinformatica.com.br www.planosinformatica.com.br;
location /static {
alias /opt/siteplanos/siteplanos/static;
}
location / {
include /etc/nginx/proxy_params;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
#proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Host $remote_addr;
proxy_pass http://localhost:8000;
}
listen [::]:443 ssl ipv6only=on; # managed by Certbot
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/planosinformatica.com.br/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/planosinformatica.com.br/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}
例如重定向是
return redirect(url_for('main.home'))
路由装饰器是 /home
如果我有这样的 ProxyFix
app.wsgi_app = ProxyFix(app.wsgi_app,x_for=1,x_host=1)
如果我有这样的情况,它将重定向到客户端 IP 地址
app.wsgi_app = ProxyFix(app.wsgi_app)
它将重定向到
https://www.planosinformatica.com.br,www.planosinformatica.com.br/home
解决方案
推荐阅读
- python - 在熊猫数据框中找到具有最大值差异的行对
- python - 如何使用 LMFIT 拟合具有共享参数的非线性曲线
- c++ - 这个奇怪的数字在输出中意味着什么?这是一些内存位置吗?
- delphi - 如何在 Firemonkey 的 TTabItem 中插入另一个控件
- java - 使用 Micrometer 将 New Relic 与 Spring Boot 集成
- javascript - Chart.js x 轴不适用于线条,但适用于散点图
- spring - 在spring配置文件中进行HTTP调用后,spring集成应用程序的日志中缺少correlationId
- c - Kotlin/Native:使用生成的 C 包装器时出现错误未定义引用?
- office365 - 我是 Teams 管理员,我希望报告特定用户的 Teams 用户状态更改。我怎么才能得到它???谢谢
- reactjs - 无法在本机反应中格式化古兰经页面