nginx rewrite 实现URL跳转的方法
最近工作中常常要改nginx配置,学习了nginx中rewrite的用法
URL跳转
这里说的URL跳转就是用户在访问一个URL时将其跳转到另一个URL上。
常见的应用场景是让多个域名跳转到同一个URL上,(例如让旧域名跳转到新域名上)
将静态文件请求跳转到cdn上等
根据用户设备跳转到不同站点(pc版,wap版)等。
URL跳转可以通过js在页面上设置的window.location实现
也可以通过php设置header来实现
当然也可以用nginx的rewrite功能实现
nginxrewrite模块
rewrite是nginx的静态重写模块
基本用法是rewritepattenreplaceflag
patten是正则表达式,与patten匹配的URL会被改写为replace,flag可选
例如将旧域名跳转到新域名上
server
{
listen80;
server_namewww.old.com;
rewrite".*"http://www.new.com;
}
跳转到新域名上时保留路径
server
{
listen80;
server_namewww.old.com;
rewrite"^/(.*)$"http://www.new.com/$1;
}
rewrite与location配合实现图片文件跳转到cdn
location~.*\.(gif|jpg|jpeg|png|bmp|swf)${
expires30d;
rewrite"^/uploadfile\/(.*)$"http://static.XXX.com/uploadfile/$1;
}
rewrite后面可以加flag,flag标记有:
last相当于Apache里的[L]标记,表示完成rewrite
break终止匹配,不再匹配后面的规则
redirect返回302临时重定向地址栏会显示跳转后的地址
permanent返回301永久重定向地址栏会显示跳转后的地址
以上这篇nginxrewrite实现URL跳转的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。
热门推荐
6 保研的祝福语简短
10 年轻20岁祝福语简短
11 朋友结婚祝福语信息简短
12 女孩婚礼贺卡祝福语简短
13 30段点歌简短祝福语
14 虎年春节祝福语图文简短
15 写给后妈祝福语大全简短
16 简短回复生日祝福语
17 校长送毕业祝福语简短
18 毕业立体贺卡祝福语简短