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 相关文章推荐
详解nginx.conf 中 root 目录设置问题
Apr 01 Servers
Nginx Rewrite使用场景及配置方法解析
Apr 01 Servers
使用nginx配置访问wgcloud的方法
Jun 26 Servers
Nginx下SSL证书安装部署步骤介绍
Dec 06 Servers
Nginx实现负载均衡的项目实践
Mar 18 Servers
详解使用内网穿透工具Ngrok代理本地服务
Mar 31 Servers
Nginx反向代理、重定向
Apr 13 Servers
Windows server 2022创建创建林、域树、子域的步骤
Jun 25 Servers
Linux中sftp常用命令整理
Jun 28 Servers
Nginx代理Redis哨兵主从配置的实现
Jul 15 Servers
修改Nginx配置返回指定content-type的方法
Sep 23 Servers
Shell中的单中括号和双中括号的用法详解
Dec 24 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学习笔记(毕业设计)
2012/02/21 PHP
PHP的简易冒泡法代码分享
2012/08/28 PHP
PHP常用的缓存技术汇总
2014/05/05 PHP
php文件上传、下载和删除示例
2020/08/28 PHP
javascript 兼容鼠标滚轮事件
2009/04/07 Javascript
谈谈对JavaScript原生拖放的深入理解
2016/09/20 Javascript
js改变html的原有内容实现方法
2016/10/05 Javascript
js实现文字向上轮播功能
2017/01/13 Javascript
AngularJS 霸道的过滤器小结
2017/04/26 Javascript
vue综合组件间的通信详解
2017/11/06 Javascript
使用async、enterproxy控制并发数量的方法详解
2018/01/02 Javascript
关于vue中watch检测到不到对象属性的变化的解决方法
2018/02/08 Javascript
解决Vue不能检测数组或对象变动的问题
2018/02/24 Javascript
Vue项目安装插件并保存
2019/01/28 Javascript
微信小程序实现炫酷的弹出式菜单特效
2019/01/28 Javascript
VuePress 快速踩坑小结
2019/02/14 Javascript
微信小程序开发搜索功能实现(前端+后端+数据库)
2020/03/04 Javascript
基于Vue全局组件与局部组件的区别说明
2020/08/11 Javascript
vue v-for 点击当前行,获取当前行数据及event当前事件对象的操作
2020/09/10 Javascript
Python字符串替换实例分析
2015/05/11 Python
详解Python中如何写控制台进度条的整理
2018/03/07 Python
使用Python爬了4400条淘宝商品数据,竟发现了这些“潜规则”
2018/03/23 Python
详解python中*号的用法
2019/10/21 Python
python画蝴蝶曲线图的实例
2019/11/21 Python
使用python快速实现不同机器间文件夹共享方式
2019/12/22 Python
使用TFRecord存取多个数据案例
2020/02/17 Python
python matplotlib 绘图 和 dpi对应关系详解
2020/03/14 Python
python爬取音频下载的示例代码
2020/10/19 Python
MoviePy简介及Python视频剪辑自动化
2020/12/18 Python
美国珠宝网上商店:Jeulia
2016/09/01 全球购物
Marriott国际:万豪国际酒店查询预订
2017/09/25 全球购物
wedgwood加拿大官网:1759年成立的英国国宝级陶瓷餐具品牌
2018/07/17 全球购物
初二生物教学反思
2014/02/03 职场文书
教师求职信
2014/06/17 职场文书
党建目标管理责任书
2014/07/25 职场文书
如何用Node.js编写内存效率高的应用程序
2021/04/30 Javascript