`
- 浏览:
607128 次
- 性别:
- 来自:
上海
-
SpringBoot: 浅谈文件上传和访问的坑 (MultiPartFile)
访问文件时Nginx的403 forbidden问题
所谓的Nginx的403错误其实就是访问权限错误.当前用户没有访问该资源的权限,这样理解的话,我们就有两种方案可行.一,降低文件访问的权限等级.二,升高用户的访问权限.下面我们一个一个来看一下如何进行实现.
降低文件访问的权限等级
降低文件的访问权限,我们只需要用到 chmod指令即可.这里简单解释一下chmod指令.
在Mac的使用过程中我们也经常会修改 某个文件的权限,例如:
chmod 777 file
如果如上设置的话,那么任何一个用户都会对这个file文件拥有全部权限.
那么为什么是三位数呢?这是因为这三位数分别代表着档案拥有者User、群组Group、其他Other三者的权限.也就是说拥有者的权限等级为7,群组的权限等级为7,其他权限等级也为7.
那么为什么是7呢?这是因为一个linux文件总共有三种权限,分别是读r,写w,操作x.对应的值分别是4,2,1.当一个用户对某个文件拥有7的数值时,这时候为4+2+1,也就是说他拥有该文件全部的权限.
上面说了 chmod指令的如何使用,那么接下来我们就可以对服务器的文件使用chmod 664 file指令,然后降低文件访问的权限等级.使全部用户都拥有文件的访问权限.但是问题来了,难道用户上传一次,我们就需要手动修改一次文件的权限,这显然是不正确的,那么我们该怎么办呢?这时候我们就需要提高用户的访问权限了.
升高用户的访问权限
提高用户的访问权限,这里其实是修改Nginx的启动者,我们把启动者设置为最多权限者,那么我们就可以访问到文件了.
首先我们先看是谁启动了Nginx需要用到如下的指令.
ps aux | grep "nginx: worker process" | awk '{print $1}'
这里我已经做了修改,截图如下所示.
image.png
本来要是不对Nginx的配置进行任何设置访问的话,那么第一个root应该为nobody,也就是Nginx的启动者.先前已经使用** ls -l file **指令查询了文件的权限情况,root 拥有读写权限,other没有任何权限.所以我们要把启动者改为root即可.
打开Nginx配置文件所在的位置,{nginx}表示你的nginx安装路径.
vi {nginx}/conf/nginx.conf
添加启动者,如下所示.
user root
返回到sbin目录中,准备检测配置文件和重新启动Ngnix.
cd ../sbin/
检测配置文件的正确性
./nginx -t
image.png
检测没有任何问题,重新启动
./nginx -s reload
这时候即可正常访问到文件了.
http://www.cocoachina.com/cms/wap.php?action=article&id=26870
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
springboot 大文件上传,支持分片并发上传、断点续传、秒传,已经测试过1.2G的文件,最大支持理论无限制 博文链接:https://blog.csdn.net/haohao123nana/article/details/54692669
Android上传单文件和多文件(后台使用MultipartFile),博客地址:https://blog.csdn.net/qq_32090185/article/details/86573530
多文件上传例子,彻底解决中文乱码问题了。总结中文乱码问题如下: 1、所有页面都用UTF-8。 2、写过滤器,设置request.setCharacterEncoding("UTF-8")。 3、javascript脚本里用encodeURI(str)。 4、适当的时候,在...
添加处理文件上传的POST请求方法,使用MultipartFile接收上传文件。 验证文件,保存到服务器文件系统。 返回响应给客户端。 文件下载: 创建Controller类,添加处理文件下载的GET请求方法。 根据请求参数找到要下载...
本文给大家带来了解决springboot MultipartFile文件上传遇到的问题,解决方法超简单,感兴趣的朋友参考下本
本文实例为大家分享了springboot+vue实现文件上传下载的具体代码,供大家参考,具体内容如下 一、文件上传(基于axios的简单上传) 所使用的技术:axios、springboot、vue; 实现思路:通过h5 :input元素标签进行...
1:对上传的文件进行压缩 然后加密 2:下载此文件要先解密才能解压
springboot实现上传图片添加水印
java springboot 切割分片上传大文件,java springboot 切割分片上传大文件
本次带来的是MultipartFile多文件文件上传,可以在sql执行完成,没有出现异常,再将文件保存进我们的服务器,如果出现异常,文件不会上传到我们的服务器
使用httpPost java实现文件上传转发。 使用MultipartFile[] files,@RequestParam Map,Object> map 接收
主要为大家详细介绍了纯js实现最简单的文件上传功能,后台使用MultipartFile,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
3、实现文件上传功能:在文件上传的方法中,可以使用MultipartFile类型的参数接收上传的文件。通过transferTo()方法将文件保存到指定的路径。 4、实现文件下载功能:在文件下载的方法中,可以使用ResponseEntity...
文件上传使用MultipartFile对象、下载使用传统IO流、jobconverter结合OpenOffice把office文件转为pdf文件、通过pdf.js实现在线预览pdf文件。(核心代码直接跳5.Service层) [TOC] 1. 导入依赖 <groupId>org.spring...
添加处理文件上传的POST请求方法,使用MultipartFile接收上传文件。 验证文件,保存到服务器文件系统。 返回响应给客户端。 文件下载: 创建Controller类,添加处理文件下载的GET请求方法。 根据请求参数找到要下载...
本篇文章主要介绍了SpringMVC使用MultipartFile实现文件的上传,本地的文件上传到资源服务器上,比较好的办法就是通过ftp上传。这里是结合SpringMVC+ftp的形式上传的,有兴趣的可以了解一下。
上传文件大小判断上传文件大小判断上传文件大小判断上传文件大小判断上传文件大小判断上传文件大小判断上传文件大小判断上传文件大小判断
File 转 MultipartFile 和需要的maven配置File 转 MultipartFile 和需要的maven配置File 转 MultipartFile 和需要的maven配置
主要为大家详细介绍了Java原生服务器接收上传文件,不使用MultipartFile类,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
@Service示例,用于使用Spring Boot从FTP服务器连接,上传和下载文件。 该项目实现了@Service Spring Boot,该服务启用并提供了一个简单的API,以便其他开发人员可以重用它来连接到实现FTP协议的服务器。 它提供了...