1、= 精确匹配
server {
listen 80;
server_name www.test.com
location = /test.html {
root /usr/share/nginx/html;
}
}
确保root指定路径下要有test.html文件
2、root和alias的区别
root 属性指定的值需要加入到最终的路径下,匹配条件会拼接
alias属性指定的值不需要进行拼接
server {
listen 80;
server_name www.test.com
location /test.html {
alias /usr/share/nginx/html/;
}
}
使用root属性时 /usr/share/nginx/html下必须要有test.html文件
使用alias的时候此路径下匹配的是默认的index.html,所有不能用= 进行精确匹配。
注意: alias指定的路径结尾需要加 /
3、^~ (字符开头)
开头表示uri以某个常规字符串开头,理解为匹配url路径即可(非正则)
server {
listen 80;
server_name www.test.com
location ^~ /a/ {
root /usr/share/nginx/html/;
}
}
4、~
区分大写的正则匹配
5、~*
表示不区分大小写的正则匹配
6、!~ 和 !~*
表示区分大小写不匹配,不区分大小写不匹配
7、/
通用,任何请求都会匹配到