nginx 使用rewrite监听某个请求接口,跳转到某个前端页面,携带参数
时间: 2024-11-15 15:32:23 浏览: 0
Nginx Rewrite使用场景及代码案例详解
Nginx通过`rewrite`指令可以配置URL重定向,当你需要将特定的请求接口自动重定向到前端页面,并传递参数时,可以这样做:
假设原始接口地址是 `/api/v1/user/:id`,你想将其重定向至前端页面 `/frontend/user.html?userId=$1`(这里 `$1` 表示匹配 `:id` 后的第一个参数),你可以设置如下的 Nginx 配置片段:
```nginx
location /api/v1/user/ {
rewrite ^/api/v1/user/(.*)$ /frontend/user.html?userId=$1 permanent;
}
```
在这个例子中:
- `^/api/v1/user/(.*)$` 是正则表达式,匹配形如 `/api/v1/user/ID` 的URL路径,其中 `(.*)` 匹配任意字符并保存到 `$1` 变量中。
- `permanent` 参数表示这是一个永久重定向,搜索引擎和客户端都会理解这是一个不会改变的固定URL。
当用户访问 `/api/v1/user/123` 时,Nginx会将请求重定向到 `/frontend/user.html?userId=123` 并显示相应的前端页面。
阅读全文