详解Nginx几种常见实现301重定向方法上的区别
Nginx下常见的301跳转有以下三种,虽然都能达到同样的目的。但是三种写法上还是有区别的,主要的区别是在正则匹配的性能上。
第一种:使用rewrite指令,通过正则匹配所有的URI后再去掉开头第一个/(反斜线)。
rewrite ^/(.*)$ https://www.hi-linux.com/$1;
第二种:同样使用rewrite指令,不同的是通过$request_uri变量匹配所有的URI。
rewrite ^ https://www.hi-linux.com$request_uri? permanent;
这样写的好处是省去了去掉开头第一个反斜线的过程,正则匹配上性能更优。
第三种:使用return指令,通过301状态码和$request_uri参数,直接告诉Nginx这是个301重定向和抓取指定URI。
return 301 https://www.hi-linux.com$request_uri;
这种方法是性能上最优的,因为rewrite指令有很多写法和规则,执行完所有正则匹配后,Nginx 才会知道这是一个301永久重定向。
相关推荐
  服务器端攻城师    2020-05-04  
   朱培知浅ZLH    2020-11-16  
   Junzizhiai    2020-10-10  
   zhangbingb    2020-09-21  
   ROES    2020-08-17  
   ningningmingming    2020-07-28  
   Jiajinjin    2020-07-27  
   懒人的小窝    2020-07-04  
   wykpaopao    2020-06-28  
   lishaokang    2020-06-12  
   Greatemperor    2020-06-10  
   谢育政    2020-05-27  
   wanggongzhen    2020-05-26  
   ITlover00    2020-05-07  
   zhongcanw    2020-05-08  
   DAV数据库    2020-05-07  
   ningningmingming    2020-05-01  
   yuleng测试赛    2020-04-11  
   tvk    2020-04-06