采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
理解了 last 和 redirect,能举个例子说明下这两个分别应用于哪种场景下吗
一、Nginx last 和 permanent区别
rewrite last - url重写后,马上发起一个新的请求,再次进入server块,重试location匹配,所以客户端的地址栏url是不变的
rewrite permanent – 返回301永久重定向, 地址栏显示重定向后的url,所以客户端地址栏会变化成新的url去请求
主要区别在于:
1、在浏览器上的地址栏是否需让客户感觉到变化
2、301是永久重定向,用户浏览器不清理缓存的情况下,会直接缓存301信息,不会再向原有url发起请求。
二、下面举一个场景:
当网站迁移,由于域名发生变化,我们希望将htttp://www.aaa.com的 流量 全部重定向给http://www.bbb.com。
除了需要修改DNS解析,把www.aaa.com指向到www.bbb.com的IP,我们通常还会在www.aaa.com的nginx上作一个permanent的永久重定向,如下:
rewrite http://www.aaa.com http://www.bbb.com permanent;
三、Nginx redirect 和permanent类似,只不过是反回的临时重定向302.客户的每一次(注意是每一次)请求还是会去先请求下原来的地址http://www.aaa.com 获得重定向后的url地址 www,bbb.com后,浏览器再去请求htttp://www.bbb.com
非常感谢!解释的非常清楚
登录后可查看更多问答,登录/注册
中间件、负载均衡、应用层安全防护、动静分离、Nginx+LUA开发等
3.3k 10
2.2k 12
1.1k 12
1.9k 11