Nginx的位置try_files匹配除roo​​t之外的所有内容

我有一个位置块,看起来像这样:

location / { index index.php; try_files /legacy$uri /legacy$uri/ $bootstrap?$args; } 

这个工程创build除了当我去http:// localhost /它匹配/legacy/这不是我想要的。 我怎样才能try_files除了$uri只是一个斜线?

添加另一个位置块:

 location = / { //do something } 

根据文档 ,nginx会:

  1. 只匹配一个位置块
  2. 将根据以下内容select位置块:
    1. 使用“=”匹配
    2. 使用“^〜”的常规string
    3. 正则expression式(按列出的顺序)
    4. 所有其他常规string

因此,顶层(/)的请求将匹配上面的位置块,而所有其他请求将匹配您现有的位置块。