NGINX配置web文件服务

一、需求描述

系统需要提供文件(pdf、图片)等上传后支持预览功能。

二、实现方式

2.1 文件权限配置

chmod a+rwx -R public/
  • chmod 是更改文件权限的命令。
  • -R 是递归选项,表示更改目录及其所有子目录和文件的权限。
  • a+rwx 是权限设置,其中 a 表示所有用户,r 表示读权限,w 表示写权限,x 表示执行权限。

2.2 nginx配置改造

   location /uploads/ {
	    alias /www/server/java_programs/demo/public/uploads/; # 路径重定向
		autoindex off; # 是否允许列出目录内容
		access_log on; # 开启访问日志
		expires 30d; # 设置缓存过期时间
		add_header Cache-Control "public";
   }

2.3 示例

在浏览器中,直接通过:【域名/文件路径】的方式浏览服务器上的文件。

在这里插入图片描述

三、与另一种实现方式的比较

接口下载文件路径访问
不支持预览,但可以做权限控制支持预览,但存在安全隐患,用户获取文件路径后,可以在公网上直接访问和下载

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/749261.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

零知识学习之DPDK与RDMA(2)—— 认识DPDK(2)

接前一篇文章:零知识学习之DPDK与RDMA(1)—— 认识DPDK(1) 本文内容参考: 《Linux高性能网络详解 从DPDK、RDMA到XDP》 刘伟著 人民邮电出版社 https://blog.51cto.com/u_15301988/5181201 特此致谢&…

FineReport填报列权限控制

近期换东家啦,又回归使用帆软啦,对于填报报表列权限的控制我这边顺带记录一下 首先讲解下场景:填报报表需要不同角色决定对不同列是否有填写或者查看权限 以填写权限为例,首先考虑用到的是 帆软自带的权限编辑,其次考虑…

SQL Server2014 公司速通版

1、SQL Server 了解 SQL Server 2014是Microsoft公司推出的一款关系型数据库管理系统,它在数据库领域具有广泛的影响力和应用。 1.1 SQL Server 2014 主要特性【简单了解就行】 SQL Server 2014 引入了一系列新特性和改进,这些特性和改进旨在提高性能、增…

Charles 证书迁移/复制,实现手机安装一次证书可以连接多个设备的 charles 效果

如果你希望在一个手机上安装一次证书,但是使用这个手机可能在不同的时候去连接你自己安装了Charles的不同设备。比如你在公司有有一个电脑,你在家里也有一个电脑,甚至还有一个笔记本等。 如果想实现只给手机安装一次证书,就可以都…

基于halcon的眼在手外(Eye-to-Hand)标定

前言 上个月写了一个《基于halcon的眼在手上(Eye-in-Hand)标定》的文章,通过官方的示例代码进行了简单的叙述,想学习的小伙伴可以点击链接进行学习。之前博主认为眼在手上(Eye-in-Hand)的案例更多&#xff…

Embedding是什么?为什么重要?

本文为 Simon Willison 在 PyBay 上发表的演讲视频的文字改进版 原文链接: https://simonwillison.net/2023/Oct/23/embeddings/ 演讲视频链接: https://youtu.be/ArnMdc-ICCM Embedding 是一个非常巧妙的技术,但常常和一堆令人生畏的术…

国内首现AIGC环幕巨屏作品《大闹天宫》人工智能已经不知不觉的出现在我们身边了!

前言 春节期间在佛山紫薇星空光影艺术馆,由元响空间影音打造的AIGC作品《大闹天宫》迎来了第一批线下体验者,揭开一场深度融合了AIGC创作和空间影音技术的视听盛宴。 没想到全网火爆的AIGC,竟然已经真真切切的出现在了我们身边。春节期间在…

YOLOv10训练自己的数据集(图像目标检测)

目录 1、下载代码 2、环境配置 3、准备数据集 4、yolov10训练 可能会出现报错: 1、下载代码 源码地址:https://github.com/THU-MIG/yolov10 2、环境配置 打开源代码,在Terminal中,使用conda 创建虚拟环境配置 命令如下&a…

【数据结构】--栈

👌个人主页: 起名字真南 🤣个人专栏:【数据结构初阶】 【C语言】 目录 1 栈1.1 栈的概念和结构1.2 栈的实现1.2.1 头文件1.2.2 初始化1.2.3 销毁1.2.4 打印所有元素1.2.5 入栈1.2.6 出栈1.2.7 获取栈顶数据1.2.8 判空1.2.9 获取元素个数 1 栈 1.1 栈的概…

apk右键一键签名方法

使用说明 1 修改reg文件最后一行,修改为自己的电脑路径 2 修改bat文件apksigner_path路径为自己的SDK路径,将签名文件命名为platform.keystore放在该文件夹内 3 运行reg文件添加注册表后,要签名的apk右键选择“cux”系统签名即可 一键cux系…

ABAP开发:动态Open SQL编程案例介绍

动态Open SQL是Open SQL的扩展。它不是要求整个SQL语句都是动态指定的。通过熟悉的静态ABAP编码表达静态已知的部分,动态元素的部分通过动态标记指定。动态片段不明确包含在ABAP源代码中,而是源代码包含一个ABAP变量,用括号括起来作为占位符。…

【网络架构】lvs集群

目录 一、集群与分布式 1.1 集群介绍 1.2 分布式系统 1.3 集群设计原则 二、LVS 2.1 lvs工作原理 2.2 lvs集群体系架构 ​编辑 2.3 lvs功能及组织架构 2.4 lvs集群类型中术语 三、LVS工作模式和命令 3.1 lvs集群的工作模式 3.1.1 lvs的nat模式 3.1.2 lvs的dr模式 …

python-docx 使用xml为docx不同的章节段落设置不同字体

本文目录 前言一、完整代码二、代码详细解析1、处理过程解释(1) 引入库并定义路径(2) 创建docx的备份文件(3) 定义命名空间(4) 打开并处理.docx文件(5) 分析和组织文档结构(6) 设置字体(7) 保存结果前言 本文主要解决的内容,就是为一个docx的不同章节段落设置不同的字体,因为…

2024年公司加密软件排行榜(企业加密软件推荐)

在信息时代,企业数据安全至关重要,防止数据泄露和未授权访问是首要任务之一。以下是2024年备受好评的企业加密软件排行榜: 固信加密软件https://www.gooxion.com/ 1.固信加密软件 固信加密软件是新一代企业级加密解决方案,采用先…

7月开始,考研数学0️⃣基础线代30天满分规划

线代零基础? 那千万不要去跟李永乐老师的线代课程,因为李永乐老师的线代课程比较进阶,适合有一定基础的同学去听,下面这两位才是零基础线代的神! 一个是喻老,另外一个是汤家凤! 这两个老师的…

stencil 组件

stencil 组件 装饰器生命周期应用加载事件 组件定义组件如何响应数据变化 组件使用如何传递 slot如何暴露组件内部的方法供外部使用?Element 装饰器 Host 组件样式函数组件 stencil 提供一些装饰器、生命周期钩子和渲染函数去编写一个组件。 装饰器 装饰器是一组用…

Web网页端IM产品RainbowChat-Web的v7.0版已发布

一、关于RainbowChat-Web RainbowChat-Web是一套Web网页端IM系统,是RainbowChat的姊妹系统(RainbowChat是一套基于开源IM聊天框架 MobileIMSDK (Github地址) 的产品级移动端IM系统)。 ► 详细介绍:http://www.52im.net/thread-2…

【Sklearn驯化-回归指标】一文搞懂机器学习中回归算法评估指标:mae、rmse等

【Sklearn驯化-回归指标】一文搞懂机器学习中回归算法评估指标:mae、rmse等 本次修炼方法请往下查看 🌈 欢迎莅临我的个人主页 👈这里是我工作、学习、实践 IT领域、真诚分享 踩坑集合,智慧小天地! 🎇 免…

大学计算机

项目一 了解计算机 1.1 了解计算机的诞生及发展阶段 1.2 认识计算机的特点、应用和分类 1.计算机的特点 1. 计算机的特点 2.计算机的应用 3.计算机的分类 4.数量单位 1.3 了解计算机操作系统的概念、功能与种类 1.操作系统概念 2.操作系统的作用 1&#xff0e…

Linux 中变量的取用与设定

优质博文:IT-BLOG-CN Linux是一个多人多任务的环境,每个人登录系统都能取得一个bash shell,每个人都能够使用bash下达mail这个指令来接收自己的邮箱等等。问题是,bash如何得知你的邮箱是那个文件?这就需要『变量』的帮…