请问nginx这个配置什么意思

黒沢
  • 46
location @router {
            rewrite ^.*$ /index.html last;
        }

这里的@router rewrite last分别是什么意思

回复
阅读 913
2 个回答

@定义一个命名的 location,使用在内部定向时。
rewrite是nginx重写模块中的一个指令,可以重写匹配到的请求。
格式: rewrite regex replacement [flag];
格式中flag是可选的标志位,可用的标志位都有:last,break,redirect,permanent;
last表示停止处理当前匹配,根据replacement 开始下一轮匹配。

rewrite功能就是使用nginx提供的全局变量或自己设置的变量,结合正则表达式和标志位实现url重写以及重定向。
last : 相当于Apache的[L]标记,表示完成rewrite
所以相当于匹配到的路由重定向到/index.html去了

宣传栏