15. url地址重写
9. url地址重写¶
#1.介绍
rewrite支持正则表达式,能够实现url的跳转,实现url规范化,根据请求的变量实现url跳转等等。
常见用途:
-封禁爬虫程序,使其跳转到一个错误页面
-动态url伪装成静态html页面,便于搜索引擎抓取
-新旧域名更新,如:chupeng.cloud > chupeng.site
#2.语法
rewrite ^/(.*) http://192.168.178.134/$1 permanent;
# ^(.*):表示匹配所有的请求,匹配成功后,跳转到后面指定url
# $1: 取出前面正则表达式分组括号里的内容
# permanent: 表示301重定向标记,其他标记:
-last:本条规则匹配完成后,继续向下匹配新的location
-break:本条规则匹配完成后,立即停止匹配动作
-redirect:返回302临时重定向状态码,浏览器地址栏显示跳转后的url,爬虫不会更新该url
-permanent:返回301永久重定向,浏览器地址也显示跳转后的url,爬虫更新该url
last和break用于实现url重写,浏览器地址栏不会发生变化
redirect和permanent也是用于url跳转,浏览器地址栏发生变化,变为新的url!
#3.举例
server {
listen 90;
server_name _;
location / {
rewrite ^/(.*) http://www.baidu.com/$1 permanent;
}
}
#4.测试
192.168.178.110:90 # 报错
192.168.178.110:90/index.html # 成功!
最后更新:
2022-02-20 13:32:53