zoukankan      html  css  js  c++  java
  • nginx rewrite 模块

    nginx rewrite 模块

    return 指令

    (1) 语法

    (2) CODE

    • 301 永久重定向

    • 302 临时重定向,禁止缓存

    • 303 临时重定向,允许改变请求方法,临时重定向,禁止缓存

    • 307 临时重定向,不允许改变请求方法,临时重定向,禁止缓存

    • 308 永久重定向,不允许改变请求方法

    (3) return 在各上下文的执行顺序
    server return > location return > error_page

    rewrite 指令

    last 和 break 区别演示

    假设 html 根目录如下:

    
    ```nginx
    location /first {
      rewrite /first(.*) /second$1 break;
      return 200 "first";
    }
    
    location /second {
      rewrite /second(.*) /third$1 last;
      return 200 "second";
    }
    
    location /test {
      rewrite /xxxtest(.*) /second$1 break;
      return 200 "test";
    }
    
    location /third {
      return 200 "third";
    }
    

    演示 last 与 break 区别:

    (1)访问 /first/1.html,会重定向到 /second$1,此时使用了 break,则停止继续匹配,直接访问 /second/1.html,这里返回 404

    (2)访问 /second/3.html,会重定向到 /third$1,此时使用了 last,所以不会直接输出 /third/3.html,而是继续匹配,进入 location /third,然后返回 third

    (3)访问 /test/1.html,此时 location /test 下的 rewrite 重定向失败(匹配失败),会直接走后面的 return 语句,返回 test

    rewrite 301/302 重定向

    开启 rewrite_log

    rewrite_log 开启后,可以看到重定向日志,以便调试

  • 相关阅读:
    js 生成32位UUID方法
    win10把控制声音改成和win7一样
    jQuery.inArray()方法
    在eclipse中安装activiti插件
    关于NOIP运输计划一题几种思路和若干种做法的研究
    该博客停止更新
    [CTSC2010]产品销售
    roi 学习轨迹
    「PA 2019」Szprotki i szczupaki
    LOJ576签到游戏
  • 原文地址:https://www.cnblogs.com/GManba/p/14092778.html
Copyright © 2011-2022 走看看