Nginx本地目录映射实现代码实例


Posted in Servers onMarch 31, 2021

有时候需要访问服务器上的一些静态资源,比如挂载其他设备上的图片到本地的目录,而本地的目录不在nginx根目录下,这个时候就需要简单的做一下目录映射来解决,比如想通过浏览器http://ip/image/2016/04/29/10/abc.jpg访问到系统目录/image_data/2016/04/29/10/abc.jpg需要在nginx.conf中对应的server {}下添加location规则,配置如下:

location /image/ {
      root /;
      rewrite ^/image/(.*)$ /image_data/$1 break;
    }

  location /image/设置服务器拦截含有/image/的请求,实际上范围根据实际情况确定精确度

  root /;设定作用的根目录,rewrite就是真正的跳转规则,设置以image为开头的请求跳转到/image_data开头的根目录,后面的参数原封不动的添加过去,这样就实现了目录的映射,

  使用上面的规则可以很方便的映射到本地指定的多个用于静态访问的目录

  保存之后使用 ./nginx -s reload 重新载入配置文件,访问指定的url就访问到了

  另外还可以灵活配置精确代理,比如代理某一个访问路径,比如我们访问http://ip/abc/bcd/123.ico这时候我们映射到/web/host1/123.ico那么可以配置如下规则:

location /abc/bcd/123.ico {
  root /;
  rewrite ^/abc/bcd/123.ico$ /web/host1/123.ico break;
}

  以上就实现了精确地路径代理,注意后面的/web/host1属于文件系统路径,而不是web主机的虚拟目录,因为上面root设置的是根目录,如果没有指定root那么以前面的server块中指定的全局root值为准,每个location块中属性的作用域只是这一个块中;

另外可以代理多个路径可以通过web真实路径访问也可以使用代理路径访问,从而根据不同的业务需求设置代理,那么nginx本身就可以实现很多实用并且好用的功能

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Servers 相关文章推荐
Centos7.7 64位利用本地完整安装包安装lnmp/lamp套件教程
Mar 09 Servers
Nginx服务器添加Systemd自定义服务过程解析
Mar 31 Servers
Nginx实现会话保持的两种方式
Mar 18 Servers
Kubernetes部署实例并配置Deployment、网络映射、副本集
Apr 01 Servers
如何通过cmd 连接阿里云服务器
Apr 18 Servers
Win10 Anaconda安装python-pcl
Apr 29 Servers
Linux中文件的基本属性介绍
Jun 01 Servers
win10+RTX3050ti+TensorFlow+cudn+cudnn配置深度学习环境的方法
Jun 25 Servers
nginx之queue的具体使用
Jun 28 Servers
Nginx如何配置根据路径转发详解
Jul 23 Servers
apache虚拟主机配置的三种方式(小结)
Jul 23 Servers
zabbix如何添加监控主机和自定义监控项
Aug 14 Servers
nginx 防盗链防爬虫配置详解
Mar 31 #Servers
Nginx服务器如何设置url链接
nginx搭建图片服务器的过程详解(root和alias的区别)
Mar 31 #Servers
Nginx代理同域名前后端分离项目的完整步骤
Mar 31 #Servers
Nginx+SpringBoot实现负载均衡的示例
win10安装配置nginx的过程
Filebeat 采集 Nginx 日志的方法
You might like
PHP中的cookie
2006/11/26 PHP
php+MySQL判断update语句是否执行成功的方法
2014/08/28 PHP
php实现编辑和保存文件的方法
2015/07/20 PHP
PHP利用Cookie设置用户30分钟未操作自动退出功能
2017/07/03 PHP
使用YII2框架实现微信公众号中表单提交功能
2017/09/04 PHP
Laravel框架学习笔记之批量更新数据功能
2019/05/30 PHP
从JavaScript 到 JQuery (1)学习小结
2009/02/12 Javascript
Javascript无阻塞加载具体方式
2013/06/28 Javascript
Node.js开发指南中的简单实例(mysql版)
2013/09/17 Javascript
控制input输入框中提示信息的显示和隐藏的方法
2014/02/12 Javascript
JS 获取鼠标左右键的键值方法
2014/10/11 Javascript
AngularJS入门教程之AngularJS指令
2016/04/18 Javascript
标准的js无缝滚动效果
2016/08/30 Javascript
ajax的分页查询示例(不刷新页面)
2017/01/11 Javascript
javaScript+turn.js实现图书翻页效果实例代码
2017/02/16 Javascript
JQuery 获取Dom元素的实例讲解
2017/07/08 jQuery
vue router自动判断左右翻页转场动画效果
2017/10/10 Javascript
Javasript设计模式之链式调用详解
2018/04/26 Javascript
NodeJS 实现多语言的示例代码
2018/09/11 NodeJs
JS 数组随机洗牌的实例代码
2018/09/12 Javascript
el-select 下拉框多选实现全选的实现
2019/08/02 Javascript
html+vue.js 实现漂亮分页功能可兼容IE
2020/11/07 Javascript
[00:55]2015国际邀请赛中国区预选赛5月23日——28日约战上海
2015/05/25 DOTA
[02:36]DOTA2亚洲邀请赛小组赛精彩集锦:奇迹哥卡尔秀翻全场
2017/03/28 DOTA
Python中死锁的形成示例及死锁情况的防止
2016/06/14 Python
Python使用三种方法实现PCA算法
2017/12/12 Python
python3 flask实现文件上传功能
2020/03/20 Python
Python实现九宫格式的朋友圈功能内附“马云”朋友圈
2019/05/07 Python
Anaconda详细安装步骤图文教程
2020/11/12 Python
意大利在线购买隐形眼镜网站:VisionDirect.it
2019/03/18 全球购物
《青蛙看海》教学反思
2014/04/23 职场文书
报名委托书
2015/01/29 职场文书
先进个人事迹材料(2016推荐版)
2016/03/01 职场文书
导游词之镇江-金山寺
2019/10/14 职场文书
SQL注入详解及防范方法
2021/12/06 MySQL
Java异常处理try catch的基本用法
2021/12/06 Java/Android