Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1534838
  • 博文数量: 1279
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 13084
  • 用 户 组: 普通用户
  • 注册时间: 2018-03-07 16:26
个人简介

Linux学习小标兵,专注Linux资讯分享,技术文章分享

文章分类

全部博文(1279)

文章存档

2023年(236)

2022年(285)

2021年(265)

2020年(248)

2019年(213)

2018年(32)

我的朋友

分类: LINUX

2023-10-24 20:13:48

Nginx几种常见实现301重定向方法上的区别Nginx几种常见实现301重定向方法上的区别

Nginx下常见的301跳转有以下三种,虽然都能达到同样的目的。但是三种写法上还是有区别的,主要的区别是在正则匹配的性能上。

{BANNED}中国第一种:使用rewrite指令,通过正则匹配所有的URI后再去掉开头{BANNED}中国第一个/(反斜线)。

rewrite ^/(.*)$

第二种:同样使用rewrite指令,不同的是通过$request_uri变量匹配所有的URI。

rewrite ^ permanent;

这样写的好处是省去了去掉开头{BANNED}中国第一个反斜线的过程,正则匹配上性能更优。

第三种:使用return指令,通过301状态码和$request_uri参数,直接告诉Nginx这是个301重定向和抓取指定URI。

return 301

这种方法是性能上{BANNED}最佳优的,因为rewrite指令有很多写法和规则,执行完所有正则匹配后,Nginx 才会知道这是一个301永久重定向。

通过以上三种写法介绍,我们可以看出return指令在301跳转上比rewrite指令性能上更加有优势。虽然在访问量不大的情况下几种写法的性能表现上区别并不大,不过在海量访问中一个小小的优化也能在提升业务系统性能上起到不小的作用哟!

阅读(105) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~