Nginx的locaiton作用是根据用户请求的URI不同,来执行不同的应用。

针对用户请求的网站URL进行匹配,匹配成功后进行对应的操作。

nginx.conf中server{}指令块的location指令如下

location / {
root html;
index index.html index.htm;
}

location = /50x.html {
root html;
}

location [ = | ~| ~* | ^~ ] url {
#指定对应的动作
}

#正则表达式解释
匹配符 匹配规则 优先级
= 精确匹配 1
^~ 以某个字符串开头,不做正则 2
~* 正则匹配 3
/blog/ 匹配常规字符串,有正则就优先正则 4
/ 通用匹配,不符合其他location的默认匹配 5

1.修改nginx.conf如下

[root@web01 extra]# vim www.conf server {
listen 83;
server_name _;

#最低级匹配,不符合其他locaiton就来这
location / {
return 401; }
#优先级最高
location = / {
return 402; }
#以/blog/开头的url,来这里,如符合其他locaiton,则以其他优先
location /blog/ {
return 403; }
#匹配任何以/img/开头的请求,不匹配正则
location ^~ /img/ {
return 404; }
#匹配任何以.gif结尾的请求,支持正则
location ~* .(gif|jpg|jpeg)$ {
return 500; }

}

2.重载nginx

[root@web01 extra]# nginx -s reload

3.通过curl命令,检测nginx的location匹配

curl命令
-s 不输出错误和进度信息,静默输出
-o 输出写入到指定文件中 /dev/null 就是丢弃输出,扔进黑洞
-I 只显示响应头
-w 完成后输出哪些内容

#用户请求的url为空或者有一个/
[root@bogon extra]# curl -s -o /dev/null -I -w “%{http_code}\n” 127.0.0.1:83 402
[root@bogon extra]# curl -s -o
/dev/null -I -w “%{http_code}\n” 127.0.0.1:83/ 402

#用户请求存在index.html或者其他任意不符合其他location的字符串
[root@bogon extra]# curl -s -o /dev/null -I -w “%{http_code}\n” 127.0.0.1:83/index.html 401

#访问以/blog/开头的url
[root@bogon extra]# curl -s -o /dev/null -I -w “%{http_code}\n” 127.0.0.1:83/blog/index.html 403

#访问以/img/开头的url
[root@bogon extra]# curl -s -o /dev/null -I -w “%{http_code}\n” 127.0.0.1:83/img/2.gif 404

#匹配以gif结尾的url,由于/blog/优先级最低,因此匹配1.gif的规则
[root@bogon extra]# curl -s -o /dev/null -I -w “%{http_code}\n” 127.0.0.1:83/blog/1.gif 500

#由于/img/优先级更高,因此优先匹配
[root@bogon extra]# curl -s -o /dev/null -I -w “%{http_code}\n” 127.0.0.1:83/img/1.gif 404

Nginx静态资源站点——Nginx location作用相关推荐

  1. Nginx静态资源站点——Nginx虚拟主机

    功能一:搭建一个静态资源网站 1.准备好目录资源 [root@web01 ~]# mkdir /website [root@web01 ~]# cd /website [root@web01 webs ...

  2. Nginx静态资源站点——Nginx地址重写

    Nginx rewrite技术主要是实现URL地址重写,且支持正则表达式的规则 rewrite能够实现URL的跳转,需要nginx在编译安装的时候,装好了PCRE这个软件. 通过rewrite可以规范 ...

  3. Nginx静态资源部署

    目录 Nginx静态资源概述 Nginx静态资源的配置指令 listen指令 server_name指令 location指令 设置请求资源的目录root / alias index指令 error_ ...

  4. nginx ---- 静态资源部署

    Nginx静态资源概述 上网去搜索访问资源对于我们来说并不陌生,通过浏览器发送一个HTTP请求实现从客户端发送请求到服务器端获取所需要内容后并把内容回显展示在页面的一个过程.这个时候,我们所请 求的内 ...

  5. Nginx静态资源跨域访问

    一.什么是跨域 浏览器从一个域名的网页去请求另一个域名的资源时,域名.端口.协议任一不同,都是跨域 二.Nginx静态资源跨域访问设置 使用模块名称是ngx_http_headers_module 指 ...

  6. nginx静态资源的服务器配置方法

    Nginx本身也是一个静态资源的服务器,当只有静态资源的时候,就可以使用Nginx来做服务器,同时现在也很流行动静分离,就可以通过Nginx来实现,这篇文章主要介绍了nginx静态资源的服务器配置方法 ...

  7. Nginx静态资源优化、压缩、缓存

    这一篇记录一下Nginx压缩缓存相关的指令,各位看到此博客的小伙伴,如有不对的地方请及时通过私信我或者评论此博客的方式指出,以免误人子弟.多谢! 目录 优化 sendfile tcp_nopush tc ...

  8. Nginx 静态资源缓存配置

    示例 # Media: images, icons, video, audio, HTC location ~* \.(?:jpg|jpeg|gif|png|ico|cur|gz|svg|svgz|m ...

  9. nginx静态资源反向代理

    nginx静态资源反向代理 server { listen 80; server_name music.didi365.com; index index.php index.html index.ht ...

最新文章

  1. 各类常见的网站检查工具
  2. Silverlight在IIS中的配置
  3. 从Visual Studio中生成Linux设备
  4. 如何在DevSecOps道路上快速、安全地抵达终点
  5. Per-FedAvg:联邦个性化元学习
  6. (10)FPGA专业术语(第2天)
  7. Asp.NET Demo
  8. linux lsnrctl命令不存在,linux – oracle lsnrctl TNS-12545:连接失败,因为目标主机或对象不存在...
  9. cmder中设置code page为utf8的方法
  10. ABB机器人画圆编程_ABB机器人编程基础(功能程序)
  11. gimp 架构_GIMP添加插件..doc
  12. 用php向新年问候,春节好早安问候语:适合新的一年发的朋友圈祝语
  13. vue element 项目 表单校验 保姆级教程 纳税人识别号 公司电话传真 银行卡校验(包含注意点)
  14. nacos的命名空间
  15. python用什么软件编程好-初学python编程,有哪些不错的软件值得一用?
  16. 【jquery】jquery-icheck radio的点击事件、change事件、获取当前选中的值
  17. 【Lesson 12】中古风五声音阶——和弦使用技巧
  18. leetcode上奇怪的解答错误
  19. SciChart_V6.最新的图表控件发布了!
  20. web 报表轻松实现数据异常预警功能

热门文章

  1. c++学习论坛推荐 强力推荐
  2. 数据结构最短路径例题_《数据结构课程设计》最短路径问题实验报告
  3. 161552-03-0,cyclo(RGDfK),cyclo(Arg-Gly-Asp-D-Phe-Lys)选择性的αvβ3整联蛋白的抑制剂
  4. 环境规划与管理名词解释
  5. 完全关闭defender
  6. 2016云计算大会PPT打包下载
  7. Exchange 2013使用的一些细节
  8. 怼黑产、防泄漏、反诈骗 阿里安全工程师的双11“大招”
  9. 超级计算机重量大,银河系有多重?大约960000000000个太阳
  10. 个人免签支付云端监听免挂机支付宝收款