|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的小伙伴们!
Nginx的重定向用到了Nginx的HttpRewriteModule,上面复杂注释以下怎样利用的***:
rewrite下令
nginx的rewrite相称于apache的rewriterule(年夜多半情形下能够把原有apache的rewrite划定规矩加上引号就能够间接利用),它能够用在server,location和IF前提判别块中,下令格局以下:
rewrite正则表达式交换方针flag标志
flag标志能够用以下几种格局:
last–基础上都用这个Flag。
break–中断Rewirte,不在持续婚配
redirect–前往一时重定向的HTTP形态302
permanent–前往永世重定向的HTTP形态301
比方上面这段设定nginx将某个目次上面的文件重定向到另外一个目次,$2对应第二个括号(.*)中对应的字符串:
location/download/{
rewrite^(/download/.*)/m/(.*)..*$$1/nginx-rewrite/$2.gzbreak;
}
nginx重定向的IF前提判别
在server和location两种情形下可使用nginx的IF前提判别,前提能够为以下几种:
正则表达式
如:
婚配判别
~为辨别巨细写婚配;!~为辨别巨细写不婚配
~*为不辨别巨细写婚配;!~为不辨别巨细写不婚配
比方上面设定nginx在用户利用ie的利用重定向到/nginx-ie目次下:
if($http_user_agent~MSIE){
rewrite^(.*)$/nginx-ie/$1break;
}
文件和目次判别
-f和!-f判别是不是存在文件
-d和!-d判别是不是存在目次
-e和!-e判别是不是存在文件或目次
-x和!-x判别文件是不是可实行
比方上面设定nginx在文件和目次不存在的时分重定向:
if(!-e$request_filename){
proxy_passhttp://127.0.0.1;
}
return
前往http代码,比方设置nginx防盗链:
location~*.(gif|jpg|png|swf|flv)${
valid_referersnoneblockedwww.jefflei.comwww.leizhenfang.com;
if($invalid_referer){
return404;
}
}
set
设置nginx变量
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的小伙伴们! |
|