zoukankan      html  css  js  c++  java
  • nginx的Rewrite重写

    1.什么是rewrite

    Rewrite主要实现url地址重写,以及重定向,就是把传入`web`的请求重定向到其他`url`的过程。

    2.Rewrite使用场景

    1.地址跳转,用户访问www.baidu.com这个URL时,将其定向至一个新的域名mobile.baidu.com
    2.协议跳转,用户通过http协议请求网站时,将其重新跳转至https协议方式
    3.伪静态,将动态页面显示为静态页面方式的一种技术,便于搜索引擎的录入,同时建上动态URL地址对外暴露过多的参数,提升更高的安全性。
    4.搜索引擎,SEO优化依赖于url路径,好记的url便于智齿搜索引擎录入

    3.rewrite语法

    Syntax:    rewrite regex replacement [flag];
    Default:    —
    Context:    server, location, if
    
    rewrite           #调用模块
    regex             #请求的链接(可以使用正则表达式)
    replacement       #跳转的链接
    [flag];           #标签
    
    #示例
    server {
        ...
        rewrite ^(/download/.*)/media/(.*)..*$ $1/mp3/$2.mp3 last;
        rewrite ^(/download/.*)/audio/(.*)..*$ $1/mp3/$2.ra  last;
        ...
    }

    4.rewrite的flag标记

    rewrite指令根据表达式来重定向URL,或者修改字符串,可以应用于server,location,if环境下,每行rewrite指令最后跟一个flag标记,支持的flag标记有如下表格所示:
    flag作用
    last 本条规则匹配完成后,停止匹配,不再匹配后面的规则
    break 本条规则匹配完成后,停止匹配,不再匹配后面的规则
    redirect 返回302临时重定向,地址栏会显示跳转后的地址
    permanent 返回301永久重定向,地址栏会显示跳转后的地址
  • 相关阅读:
    数据结构-链表的代码笔记
    数据结构-顺序表的代码笔记
    作业笔记-素数对猜想
    数据结构第五章总结
    数据结构第四章总结
    数据结构第三章总结
    数据结构第二章线性表总结
    单链表的创建及遍历
    求集合交集
    tree.js
  • 原文地址:https://www.cnblogs.com/chenlifan/p/13617394.html
Copyright © 2011-2022 走看看