You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Nginx中return无法实现URL重定向,proxy_pass遇相对路径失效

问题描述

我需要实现标准的「URL重定向」功能,参考location return相关有效资料后,使用了以下Nginx配置:

location ~ ^/?[RrWwNn]?[0-9]+$ {
        rewrite
          ^/?[Rr]?([0-9]+)$
          /relation/$1
          break;
        rewrite
          ^/?[Ww]?([0-9]+)$
          /way/$1
          break;
        rewrite
          ^/?[Nn]?([0-9]+)$
          /node/$1
          break;
        # proxy_pass  https://www.openstreetmap.org;
        return 301 https://www.openstreetmap.org;
}

但访问时返回**404 Not Found**。


关于注释的proxy_pass说明

这并非URL或rewrite规则问题,因为proxy_pass原本可以正常工作。但如果要保留自身域名,OpenStreetMap页面HTML中的相对路径(src和href属性)会请求自身域名下不存在的文件,示例如下:

<!DOCTYPE html>
<html lang="en" dir="ltr">
...
  <script src="/assets/application-2b1976907d32c6d0274def6df7df5970c274bc239f2cbd39ab43bd94cb828407.js"></script>
...
  <link rel="stylesheet" href="/assets/screen-ltr-dccece0ade0dcdf51378c9d06264575b38c6bb23351144314efde0956d6883cf.css" media="screen" />
...

内容的提问来源于stack exchange,提问作者Peter Krauss

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 13:20:41