linux nginx作用,Nginx的location区块的作用及设置

1.location的作用

location指令的作用是根据用户请求的URI来执行不同的应用,也就是根据用户请求的网站URL进行匹配,匹配成功即进行相关的操作。

2.location的语法

location的语法是:

location  [ = | ~ | ~* | ^~ ]    uri          { .... }

# | 指令  | |    匹配标识    |  |匹配的网站网址|  |匹配URI之后要执行的配置段|

其中"="的优先级为最高,为精确匹配;特殊字符"~"和"~*"的区别在于前者区分大小写,后者不区分大小写,他们还可以用逻辑操作符"!"来取反匹配;"^~"的意思是匹配之后不做正则表达式的检查,就是不用匹配类似于"\.(gif|jpg|jpeg)$"的正则表达式了,也就是说"^~"后面跟了正则表达式也没有用的。

location的匹配示例:

location = / { [ configuration A ] }                    #用户请求"/"时,匹配A,例如:www.pcm.com/

location / { [ configuration B ] }                      #当用户请求"/index.html"时,匹配B,例如:www.pcm.com/index.html

location /documents/ { [ configuration C ] }            #当用户请求"/documents/"时,匹配C,例如:www.pcm.com/documents/index.html

location ^~ /images/ { [ configuration D ] }            #当用户请求"/images/"时,匹配D,:www.pcm.com/images/1.jpg

location ~* \.(gif|jpg|jpeg)$ { [ configuration E ] }    #当用户请求".gif|.jpg|.jpeg"时,匹配E,例如:www.pcm.com/documents/1.jpg

#上面的反斜杠是转义字符,$的意思是结尾

3.location实验验证

我们在bbs的主机上做验证,配置文件如下:

server {

listen      80;

server_name  bbs.pcm.com;

root  html/bbs;

location = / {

return 401;

}

location / {

return 402;

}

location /documents/ {

return 403;

}

location ^~/images/ {

return 404;

}

location ~* \.(gif|jpg|jpeg)$ {

return 405;

}

}

检查语法,没问题的话重新加载配置文件,平滑重启nginx

1c253f45b30d9a4c5aaef217a40ea485.png

实验的结果如下:

595f8d85d04f5cda2d35af19e35abf45.png

从上图可以验证到结果没问题的。其中location配对的方法是每条规则都去匹配,直到匹配到最为匹配的结果才输出;还有就是"/"这个是默认匹配的,如果都匹配不上的时候,最后就会默认匹配"/",所以输出的结果为402.

0b1331709591d260c1c78e86d0c51c18.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值