nginx rewrite 实现URL跳转的方法
2019-08-30 14:03
1736 查看
最近工作中常常要改nginx配置,学习了nginx中rewrite的用法
URL跳转
这里说的URL跳转就是用户在访问一个URL时将其跳转到另一个URL上。
常见的应用场景是让多个域名跳转到同一个URL上,(例如让旧域名跳转到新域名上)
将静态文件请求跳转到cdn上等
根据用户设备跳转到不同站点(pc版,wap版)等。
URL跳转可以通过js在页面上设置的window.location实现
也可以通过php设置header来实现
当然也可以用nginx 的 rewrite功能实现
nginx rewrite模块
rewrite 是 nginx的静态重写模块
基本用法是 rewrite patten replace flag
patten是正则表达式,与patten匹配的URL会被改写为replace,flag可选
例如将旧域名跳转到新域名上
server { listen 80; server_name www.old.com; rewrite ".*" http://www.new.com; }
跳转到新域名上时保留路径
server { listen 80; server_name www.old.com; rewrite "^/(.*)$" http://www.new.com/$1; } rewrite与location配合实现图片文件跳转到cdn location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ { expires 30d; rewrite "^/uploadfile\/(.*)$" http://static.XXX.com/uploadfile/$1; }
rewrite 后面可以加flag,flag标记有:
last 相当于Apache里的[L]标记,表示完成rewrite
break 终止匹配, 不再匹配后面的规则
redirect 返回302临时重定向 地址栏会显示跳转后的地址
permanent 返回301永久重定向 地址栏会显示跳转后的地址
以上这篇nginx rewrite 实现URL跳转的方法就是小编分享给大家的全部内容了,希望能给大家一个参考
您可能感兴趣的文章:
相关文章推荐
- PHP实现URL地址跳转的几种方法代码
- Express URL跳转(重定向)的实现方法
- 用django实现url跳转的几种方法总结
- nginx rewrite 实现URL跳转
- [转]实现从一个页面跳转到另一页面方法的比较
- UrlReWriter 实现方法
- asp.net下用url重写URLReWriter实现任意二级域名的方法第1/2页
- 页面自动跳转的几种实现方法 -- zz
- 页面自动跳转实现方法
- HTML页面自动跳转的五种实现方法
- 利用javascript实现页面跳转的几种方法
- ASP.NET 2.0的URL映射的实现方法
- ASP.NET 2.0的URL映射的实现方法
- 页面自动跳转实现方法
- Rewirte实现URL的跳转
- 在ASP.NET中重写URL 方法三:在IIS7中使用HttpModule 实现无扩展名的URL重写
- js实现网页跳转的5种方法
- JavaScript页面跳转的一些实现方法
- 新发现原来documenet.URL也可以实现页面跳转
- 网站登录记忆跳转实现的一种方法