rewrite和location正则匹配时?是让前面紧挨的一个字符或匹配条件变成"逻辑或"
1 2 |
locaiton ~* ^/test/?$ rewrite ^/test/?$ |
上面路径访问时/test和/test/都会被匹配
1 2 |
locaiton ~* ^/test/(a|b)?$ rewrite ^/test/(a|b)?$ |
上面路径访问时/test/和/test/a和/test/b都会被匹配
1 2 |
locaiton ~* ^/test/ab?$ rewrite ^/test/ab?$ |
上面路径访问时/test/a和/test/ab都会被匹配
然后需要注意的一点是?如果在rewrite跳转重写地址里的话,是取消参数传递的功能:
1 |
rewrite ^/test/(.*)$ https://www.1987619.com/$1; |
如果访问/test/a.html?id=b则302跳转后的地址为https://www.1987619.com/a.html?id=b
1 |
rewrite ^/test/(.*)$ https://www.1987619.com/$1?; |
加了?以后则访问/test/a.html?id=b则302跳转后的地址为https://www.1987619.com/a.html