【问题标题】:Nginx locations - case insensitive with spacesNginx 位置 - 空格不区分大小写
【发布时间】:2011-06-01 03:16:57
【问题描述】:

我的问题是关于 nginx“位置”配置块:

如果我想在 URL 中创建一个带有空格字符(嗯,%20)的位置,我可以这样做:

location ^~ "/Style Library/" {
}

如果我想创建一个不区分大小写的位置,我可以这样做:

location ~* ^/StyleLibrary/ {
}

但是,我找不到一种方法可以让空格字符工作不区分大小写的位置。这些似乎都不起作用:

location ~* "^/Style Library/" {
}

location ~* ^/Style[^_]Library/ {
}

location ~* ^/Style\sLibrary/ {
}

location ~* ^/Style.Library/ {
}

谁能帮忙?

【问题讨论】:

    标签: nginx


    【解决方案1】:

    您是否有其他正则表达式位置可能在服务器块中更早地处理请求?我刚刚在本地进行了测试,并且能够使以下位置工作:

    location ~* "^/Style Library/" {
      rewrite ^ /dump.php;
    }
    

    其中 /dump.php 只是一个执行 var_export($_SERVER); 的简单脚本

    我用这个测试过

    curl -i "dev/StYlE LiBrArY/"
    

    我猜想其他位置正在处理请求,而不是那个正则表达式位置。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-09-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-15
      • 1970-01-01
      相关资源
      最近更新 更多