^和$在nginx.conf位置做什么?

时间:2015-09-28 04:10:56

标签: postgresql nginx openresty

location ~ ^/test/(?<id>\d+)$ {
    postgres_pass    database;
    rds_json         on;
    postgres_escape  $name $id;
    postgres_query   "SELECT $name";
}

上面的代码段取自https://github.com/FRiCKLE/ngx_postgres/issues/4

有人可以向我解释^做什么以及$做什么? 我无法找到解释它的文档。 已检查过https://github.com/FRiCKLE/ngx_postgreshttp://nginx.org/en/docs/http/ngx_http_core_module.html#location

1 个答案:

答案 0 :(得分:3)

这是一个正则表达式。 Google正则表达式。

^匹配字符串的开头,$匹配结尾。换句话说,只有当^$之间的部分与location的所有值匹配时,此正则表达式才会匹配。因此,只有以/test/开头,后跟一个或多个数字以及字符串结尾的网址才会匹配。