nginx - Nginx 重定向带和不带端口
问题描述
我们有 2 个使用 nginx 的环境(测试和产品)。
要访问测试,我们直接使用主机名:https://myhost:29000
要访问 prod,我们有一个外部 LoadBalancer: https://mysite 重定向到 https://myprodhost1:29000 和 https://myprodhost2:29000
我们有以下nginx配置
location / {
try_files $uri $uri/ =404;
}
location /error-page {
port_in_redirect off;
return 301 /;
}
/error-page 在客户端(由 React)处理,因此它不存在于后端。
我们想要实现的是:如果用户导航到错误页面并按 F5,它应该被重定向到 / (root)
问题是先前的配置适用于 prod,因为端口 29000 将被省略。对于测试它不起作用,因为我们需要端口:29000
我尝试了几种配置,但都没有成功。
解决方案
我解决了它只是使用:
absolute_redirect off;
推荐阅读
- python - 如何更新第二个绘图轴 plotly Scatter3D subplots
- python - 广播?For 循环 --> numpy
- javascript - 用另一项研究刷新传单地图
- c - 如何使用头文件包含来自不同文件的函数和变量
- excel - 试图为 FuzzyFind 定义 Range
- javascript - 你如何在javascript中遍历未知数量的孩子和孩子的孩子
- r - T 检验错误 'arg' 必须为 NULL 或字符向量
- django - 如何在 UpdateAPIView django REST 中获取模型实例?
- javascript - 从 JSON 响应中删除不需要的标签
- angular - 从 StripeCheckout.configure Stripe Payment 与 Angular 10 集成获取电子邮件 ID