LLEARNING NOTES

技术 · 思考 · 实践 · 成长

首页/Nginx/正文

Nginx URL重写

Nginx468 次阅读

Nginx URL重写

Nginx的url地址重写功能,主要是使用nginx提供的rewrite功能且支持正则表达式

rewrite能够实现url的跳转,实现url规范化。


对爬虫的封禁让其跳转到一个错误的页面

动态的url,伪装成静态html页面,便于搜索引擎抓取

新旧域名的更换,替换www.oldboyedu.com > www.oldboyedu.com.cn


rewrite语法

rewrite ^/(.*)  http://192.168.178.34/$1  parmanent;


# 解释

rewrite 是nginx 地址重写的关键词指令,开启跳转功能

正则 ^/(.*) 表示匹配所有的请求,匹配成功后,跳转到后面指定的url地址

$1  是取出前面正则表达式分组括号里面的内容

parmanent 表示301 重定向的标记



rewrite 结尾的参数标记如下

Last 规则匹配完成后,继续向下匹配新的location

break  本条规则匹配完成后,立即停止匹配动作

Redirct 返回302临时重定向状态码,浏览器地址栏显示跳转后的url

permanent 返回301永久重定向


last 和break用于实现url重写,浏览器的地址栏不会发生变化

redirct 和permanent 也是用于url跳转浏览器url地址栏发生变化,跳转到新的url地址栏


实现一个301url跳转

准备一个虚拟主机的配置文件,实现,当用户访问该虚拟主机,直接跳转到百度页面

vim extra/learn_rewrite.conf 

server {

listen  90;

server_name _;

# 最低级请求配置 所有请求都走到这里

location / {

rewrite ^/(.*)  http://www.baidu.com/$1

}

}


人生于世,就得有点兴致,闲暇之时,或乐游山水、或尽享食味、或寄情岁时,它让我们的生活变得充盈。

评论交流

理性讨论,共同进步
验证码

相关文章

继续阅读