zoukankan      html  css  js  c++  java
  • nginx + lua 的 跳转命令

    1. ngx.redirect(uri, status?)    301/302外部重定向

    redirect  为外部重定向,有两种形式:

    rewrite ^ /foo? redirect;  # nginx config   在 rewrite 阶段重定向
    等价于
    return ngx.redirect('/foo');  -- Lua code

    rewrite ^ /foo? permanent;  # nginx config
    等价于
    return ngx.redirect('/foo', ngx.HTTP_MOVED_PERMANENTLY)  -- Lua code

     

    301  Moved Permanently

    永久移动。请求的资源已被永久的移动到新URI,返回信息会包括新的URI,浏览器会自动定向到新URI。今后任何新的请求都应使用新的URI代替。

    302  Found

    临时移动。与301类似。但资源只是临时被移动。客户端应继续使用原有URI。

        

     

        

        

       

     

    2.  ngx.exec()      内部重定向

      exec 会直接跳转到另一个 location 做处理,但是不会 返回 调用 它的地方。

     

     

    3.  子请求   

      res = ngx.location.capture( location,args )  返回一个包含四个元素的Lua表   res.status   res.header     res.body    res.truncated

      ngx.location.capture 是非阻塞的,ngx.location.capture可以用来完成http请求,当调用使用此命令,当前请求会跳转到location 去执行,最后会返回。

  • 相关阅读:
    Redis学习笔记——环境搭建
    SQL 记录
    路径“D:svn.....”的访问被拒绝问题处理
    去除浏览器自动给input赋值的问题
    获取用户IP
    JS对身份证号码进行验证方法
    JS 实现倒计时
    SQL 游标
    .net上传图片实例
    生成唯一码
  • 原文地址:https://www.cnblogs.com/chenpython123/p/10904203.html
Copyright © 2011-2022 走看看