重定向 flag 的使用场景
来源:4-10 Rewrite规则_rewrite规则场景(2)
abulaka
2019-04-03
理解了 last 和 redirect,能举个例子说明下这两个分别应用于哪种场景下吗
写回答
1回答
-
一、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
012019-04-08
相似问题