简单总结:nginx 的 rewrite 指令

NGINX REWRITE 指令:

语法:

rewrite regex replacement [flag];

作用:

如果一个 uri 匹配指定的正则表达式 regex , uri 就按照 replacement 重写。 rewrite 按配置文件中出现的顺序执行。 flags 标志位的作用是对接下来相同rewrite指令该如何处理。如果 replacement 以 http:// 或 https:// 开始,将不再继续处理,这个重定向将返回给客户端。

flag(参数)

  • last:停止处理后续 rewrite 指令集,然后对当前重写的新 urirewrite 指令集上重新查找。
  • break: 停止处理后续 rewrite 指令集,并不在重新查找,但是当前 location 内剩余非 rewrite 语句和 location 外的非 rewrite 语句可以执行。
  • redirect: 如果 replacement 不是以 http://https:// 开始,返回 302 临时重定向。
  • permant : 返回 301 永久重定向。

执行顺序:

1.首先执行 server 快的 rewrite 的指令. (这里的 server 块指的是,大括号包围的区域)
2.执行选定的 location 中的 rewrite 指令.
注意:如果 rewrite 循环超过10次,则返回 500 Internal Server Error 错误。

Aaron
Aaron
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!