nginx rewrite 用法如何使用rewrite去除URL中的特定参数
rewrite 基本介绍
rewrite是实现URL重写的关键指令,根据regex (正则表达式)部分内容,重定向到replacement,结尾是flag标记。
基本语法:
rewrite <regex> <replacement> [flag]; 关键字 正则 替代内容 flag标记
- regex: 正则表达式语句进行规则匹配
- replacement: 将正则匹配的内容替换成replacement
- flag: last | break | redirect | permanent
- last : 本条规则匹配完成后,继续向下匹配新的location URI规则
- break: 本条规则匹配完成即终止,不再匹配后面的任何规则
- redirect : 回302临时重定向,浏览器地址会显示跳转后的URL地址 (防爬虫)
- permanent : 返回301永久重定向,浏览器地址栏会显示跳转后的URL地址
rewrite 使用位置
- server : 在server中针对所有的请求
- location : 在 location 中则针对 单个匹配路径的
- If
nginx rewrite 用法,用rewrite去除URL中的特定参数
日常服务中经常会用Nginx做一层代理转发,把Nginx当做前置机
比如,以下配置:
server { # 对外暴露 80 端口 listen 80; server_name 192.168.10.231; # 后端API地址暴露为:http://192.168.10.231/apis location /apis { proxy_pass http://127.0.0.1:8000/; proxy_pass_request_headers on; # 重写URL 去除apis rewrite "^/apis/(.*)$" /$1 break; } }
这里的rewrite 就是为了去除URL中的/apis,实际的后端api中是没有这个参数的,但是为了做到在Nginx转发请求,前端需要加上这个参数,以便于区别
比如前端的请求地址是
http://192.168.10.231/apis/user
那么实际上经过Nginx转发后请求的地址是
http://127.0.0.1:8000/user
rewrite “^/api/(.)”/1 break,路径重写:
(1)"^/api/(.)$":匹配路径的正则表达式,用了分组语法就是*(.)**,把/api/以后的所有部分当做1组;
(2)/$1:重写的目标路径,这里用$1引用前面正则表达式匹配到的分组(组编号从1开始,也就是api),即/api/后面的所有。这样新的路径就是除去/api/以外的所有,就达到了去除/api前缀的目的
break:指令,常用的有2个,分别是:last、break;
(1)last:重写路径结束后,将得到的路径重新进行一次路径匹配; (2)break:重写路径结束后,不再重新匹配路径。
到此这篇关于nginx rewrite 用法如何使用rewrite去除URL中的特定参数的文章就介绍到这了,更多相关nginx rewrite 用法内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
nginx配置https://localhost/index报404
本文主要介绍了Nginx配置导致页面刷新时报404错误的问题,主要因为静态文件路径配置错误、前端路由问题和反向代理配置错误这几种错误,下面就来介绍一下解决方法2024-12-12Nginx配置SSL证书出现PEM_read_bio_PrivateKey() failed错误解决
在配置GoDaddy的SSL证书并启动Nginx时,可能遇到由于证书密钥文件编码问题导致的启动失败,具体表现为nginx报错:PEM_read_bio_PrivateKey() failed,本文就来介绍一下,感兴趣的可以了解学习2024-10-10nginx、Apache、IIS服务器解决 413 Request Entity Too Large问题方法汇总
这篇文章主要介绍了nginx、Apache、IIS三种服务器解决413 Request Entity Too Large问题的方法集合,需要的朋友可以参考下2014-05-05关闭nginx空主机头 防止nginx空主机头及恶意域名指向
nginx的默认配置中的虚拟主机允许用户通过IP访问,或者通过未设置的域名访问,比如有人恶意把他自己的域名指向了你的ip,需要的朋友可以参考下2016-09-09nginx部署后css、js、图片等样式不加载问题的两种解决方案
这篇文章主要介绍了nginx部署后css、js、图片等样式不加载问题的两种解决方案,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下2023-12-12
最新评论