0
点赞
收藏
分享

微信扫一扫

云计算学习之路——Nginx——Rewrite

金牛豆豆 2022-04-20 阅读 60

Nginx——Rewrite

文章目录

一、rewrite介绍

1、什么是Rewrite

Rewrite又称URL Rewrite,即URL重写,就是把传入Web的请求重定向到其他URL的过程。
URL Rewrite最常见的应用是URL的伪静态化,是将动态界面显示为静态页面的一种技术。比如http://www.123.com/news/index.php?id=123 使用URLRewrite 转换后可以显示为 http://www.123.com/news/123.html对于追求完美主义的网站设计师,就算是网页的地址也希望看起来尽量简洁明快。理论上,搜索引擎更喜欢静态页面形式的网页,搜索引擎对静态页面的评分一般要高于动态页面。所以,UrlRewrite可以让我们网站的网页更容易被搜索引擎所收录。

• 从安全角度上讲,如果在URL中暴露太多的参数,无疑会造成一定量的信息泄漏,可能会被一些黑客利用,对你的系统造成一定的破坏,所以静态化的URL地址可以给我们带来更高的安全性。

• 实现网站地址跳转,例如用户访问360buy.com,将其跳转到jd.com。例如当用户访问tianyun.com的 80端口时,将其跳转到443端口。

2、Rewrite 相关指令
    Nginx Rewrite 相关指令有 if、rewrite、set、return

二、Rewrite的if语句

应用环境
  server,location

语法:
if (condition) { … }

if 可以支持如下条件判断匹配符号

在匹配过程中可以引用一些Nginx的全局变量

举例:

匹配访问的url地址是否是个目录

匹配访问的地址是否以www开头

三、Rewrite flag

rewrite 指令根据表达式来重定向URI,或者修改字符串。可以应用于server,location, if环境下每行rewrite指令最后跟一个flag标记,支持的flag标记有:

last 相当于Apache里的[L]标记,表示完成rewrite。默认为last。
break 本条规则匹配完成后,终止匹配,不再匹配后面的规则
redirect 返回302临时重定向,浏览器地址会显示跳转后的URL地址
permanent 返回301永久重定向,浏览器地址会显示跳转后URL地址

Rewrite匹配参考案例:
案例1:

实现访问 http://www.zhangyu.com/a/1.html 后跳转至http://www.zhangyu.com/b/2.html
1、准备工作:配置本地hosts域名解析,创建发布目录
在这里插入图片描述
在这里插入图片描述
2、编写配置文件

3、重新加载配置文件

4、验证
在这里插入图片描述

案例2:

实现访问 http://www.zhangyu.com/2021/a/1.html 时跳转至http://www.zhangyu.com/2022/a/1.html

1、准备工作:配置本地hosts域名解析,创建对应的网站发布目录
在这里插入图片描述
在这里插入图片描述
2、编写配置文件

3、重新加载配置文件

4、验证
在这里插入图片描述

案例3:

实现访问http://www.zhangyucom/a/1.html 跳转至 http://jd.com
1、准备工作:本地域名解析、默认发布目录
在这里插入图片描述
2、编写配置文件

3、重新加载配置文件

4、验证
在这里插入图片描述

案例4:

实现访问http://www.zhangyu.com/a/1.html 时跳转至 http://jd.com/a/1.html
1、准备工作:本地域名解析、默认发布目录
在这里插入图片描述
在这里插入图片描述
2、编写配置文件

3、重新加载配置文件

4、验证
在这里插入图片描述

案例5:

在访问目录后添加/ (如果目录后已有/,则不加/)
实现访问 http://www.tianyun.com/a/b/c时跳转至http://$host$1$2/
$1:/a/b
$2:c
1、准备工作
在这里插入图片描述
2、编写配置文件

3、重新加载配置文件

4、验证
在这里插入图片描述

案例6:

实现访问http://www.zhangyu.com/login/zy.html时跳转至http://www.zhangyu.com/reg/login.html?user=zy
1、准备工作
在这里插入图片描述
2、编写配置文件

3、重新加载配置文件

4、验证
在这里插入图片描述

案例7:

实现访问http://www.zhangyu.com/qf/11-22-33/1.html 时跳转至http://www.zhangyu.com/qf/11/22/33/1.html
1、准备工作
在这里插入图片描述
2、编写配置文件

3、重新加载配置文件

4、验证
在这里插入图片描述

举报

相关推荐

0 条评论