前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Nginx结构全解析(48)

Nginx结构全解析(48)

原创
作者头像
陈不成i
修改2021-05-13 14:46:02
3590
修改2021-05-13 14:46:02
举报
文章被收录于专栏:ops技术分享

2 rewrite指令

  1. Syntax: rewrite regex replacement [flag];
  2. Default:
  3. Context: server, location,

功能

  • 将regex指定的url替换成replacement这个新的url 可以使用正则表达式及变量提取
  • 当replacement以http://或者https://或者$schema开头,则直接返回302重定向
  • 替换后的url根据flag指定的方式进行处理 如果在同一级配置块中存在多个rewrite规则,那么会自下而下逐个检查;被某条件规则替换完成后,会重新一轮的替换检查,因此,隐含有循环机制;[flag]所表示的标志位用于控制此循环机制;
    • last:
      • 浏览器地址栏URL地址不变
      • 用replacement这个URI进行新的location匹配,重写完成后停止对当前URI在当前location中后续的其它重写操作,而后对新的URI启动新一轮重写检查;提前重启新一轮循环;
    • beak:
      • 浏览器地址栏URL地址不变
      • break指令停止当前脚本指令的执行,等价于独立的break指令,重写完成后停止对当前URI在当前location中后续的其它重写操作,而后直接跳转至重写规则配置块之后的其它配置;结束循环;
    • redirect:
      • 浏览器地址会显示跳转后的URL地址
      • 返回302临时重定向,
    • permanent:
      • 浏览器地址会显示跳转后的URL地址
      • 返回301永久重定向

功能一句话概括为:使用nginx提供的全局变量或自己设置的变量,结合正则表达式和标志位实现url重写以及重定向。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 2 rewrite指令
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档