RPC框架下实现文件上传到linux服务器
一、前端使用element -ui 的upload组件

:data 表示额外传递的参数, :header 表示设置请求头参数,如,token等, action表示后台api接口的地址

二、 contoller层

因为dubbo 不支持File文件类型的参数,所以转换成byte[],或者使用hessian协议
Dubbo 缺省协议采用单一长连接和 NIO 异步通讯,适合于小数据量大并发的服务调用,以及服务消费者机器数远大于服务提供者机器数的情况。
反之,Dubbo 缺省协议不适合传送大数据量的服务,比如传文件,传视频等,除非请求量很低。
官网:http://dubbo.apache.org/zh/docs/v2.7/user/references/protocol/dubbo/
三、定义服务端暴露的接口

四、 provider端

现在文件只能传到本地电脑,不能传到Linux下,下面来实现传递到linux服务器上
测试下,在E盘下生成一个cc.pdf的文件

五、linux 安装ftp组件vsftpd

上次安装nginx,把selinux关闭了,现在开起selinux,并设置放行nginx
开启http访问


六、防火墙开启21端口

开放端口后需要重启防火墙

七、创建一个用户用于登录

八、给新创建的用户设置密码

九、修改selinux
使用下列命令查看selinux状态
getsebool -a | grep ftp

开启外网的访问权限
setsebool -P allow_ftpd_full_access on
setsebool -P tftp_home_dir on

十、 关闭匿名访问
修改/etc/vsftpd/vsftpd.conf文件(访问时必须有用户名和密码才能访问):
vim /etc/vsftpd/vsftpd.conf

所以我就不修改了
十一、开启被动模式
默认是开启的,但是要指定一个端口范围,打开vsftpd.conf文件,在最后面加上下列内容
pasv_min_port=30000
pasv_max_port=30999
开放30000-30999端口,并重启防火墙

修改配置文件后要重启ftp服务

十二、设置开机启动vsftpd ftp 服务

十三、修改provider
首先要导入apache 的Commons-net

修改nginx下的default.conf,添加路径

重启nginx后,通过http访问

发现是403,查看下nginx权限

打开nginx.conf文件修改user 权限

把user 的nginx 修改为medical,我在此修改为root,重启nginx后再用浏览器访问
参考资料:
https://www.cnblogs.com/zhaixingzhu/p/12569156.html
https://www.jianshu.com/p/b113ba77d467
https://www.cnblogs.com/aotian/p/13222134.html
https://blog.csdn.net/csdn_lqr/article/details/53333946
https://blog.csdn.net/qq_41905042/article/details/105899450?utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2~all~sobaiduend~default-1-105899450.nonecase&utm_term=centos8%E9%98%B2%E7%81%AB%E5%A2%99%E5%85%81%E8%AE%B8%E7%AB%AF%E5%8F%A3&spm=1000.2123.3001.4430
RPC框架下实现文件上传到linux服务器的更多相关文章
- 将windows下的文件上传到Linux服务器上
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/lx_Frolf/article/deta ...
- Struts2框架下的文件上传文件类型、名称约定
Struts2框架下的文件上传机制:1.通过multipart/form-data form提交文件到服务器2.文件名是通过什么地方设置的?在strust2的FileUploadInterceptor ...
- linux下将文件上传到svn服务器
linux下将文件上传到svn服务器 摘自:https://blog.csdn.net/sky_yangge/article/details/41544773 2014年11月27日 16:47:57 ...
- 通过XShell实现windows文件上传到Linux服务器上
.XShell上传文件到Linux服务器上 在学习Linux过程中,我们常常需要将本地文件上传到Linux主机上,这里简单记录下使用Xsheel工具进行文件传输 1:首先连接上一台Linux主机 2: ...
- ssm框架下实现文件上传
1.由于ssm框架是使用Maven进行管理的,文件上传所需要的jar包利用pom.xml进行添加,如下所示: <properties> <commons-fileupload.v ...
- ssm框架下的文件上传和文件下载
最近在做一个ssm的项目,遇到了添加附件和下载的功能,在网上查了很多资料,发现很多都不好用,经过摸索,发现了一套简便的方法,和大家分享一下. 1.在自己已经构建好的maven web项目中 pom. ...
- 第一零四天上课 PHP TP框架下的文件上传
控制器代码(TestController.class.php) <?php namespace Home\Controller; use Home\Controller\EmptyControl ...
- 中文名文件上传到linux服务器上以后文件名会乱码(openoffice)
1.中文名文件上传后保存在linux服务器上文件名会乱码,但是我们通过SSH直接对服务器上的一个文件进行重命名是可以使用中文的,而且显示出来是正确的,这说明服务器是可以支持中文的. 2.而为什么上传的 ...
- 本地文件上传到Linux服务器
1.从服务器上下载文件scp username@servername:/path/filename /var/www/local_dir(本地目录) 例如scp root@192.168.0.101: ...
随机推荐
- 【Linux】【Web】【Nginx】配置nginx日志到远程syslog服务器
1. 概述: 主要是用于吧nginx的日志直接传送到远程日志收集的服务器上.远程日志服务器只要能够支持syslog协议都能够收到日志,本文的syslog服务器是IBM的日志收集系统Qradar. 2. ...
- jstl中的if标签
<%@ page import="java.util.ArrayList" %><%@ page import="java.util.List" ...
- C++STL标准库学习笔记(四)multiset续
自定义排序规则的multiset用法 前言: 在这个笔记中,我把大多数代码都加了注释,我的一些想法和注解用蓝色字体标记了出来,重点和需要关注的地方用红色字体标记了出来,只不过这一次的笔记主要是我的补充 ...
- Mysql-5.6 二进制多实例部署
目录 一.简介 二.环境声明 三.程序部署 一.简介 MySQL多实例就是在一台机器上开启多个不同的服务端口(如:3306,3307),运行多个MySQL服务进程,通过不同的socket监听不同的服务 ...
- TSN 时间敏感网络:缘起 (TSN历史与现状)
前言 随着工业物联网(IIoT)的兴起和工业4.0的提出,越来越多的设计师.工程师和最终用户关注时间敏感网络(Time-Sensitive Networking,下简称为TSN).TSN为以太网提供确 ...
- 3、回溯算法解题套路框架——Go语言版
前情提示:Go语言学习者.本文参考https://labuladong.gitee.io/algo,代码自己参考抒写,若有不妥之处,感谢指正 关于golang算法文章,为了便于下载和整理,都已开源放在 ...
- CF675A Infinite Sequence 题解
Content 给定三个整数 \(a,b,c\),问你 \(b\) 是否在以 \(a\) 为首项,公差为 \(c\) 的等差数列中. 数据范围:\(-10^9\leqslant a,b,c\leqsl ...
- java 多线程:Thread类;Runnable接口
1,进程和线程的基本概念: 1.什么是进程: 进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础.在早期面向进程设计的计算机 ...
- GBK 和 UTF8
首先来看一下常用的编码有哪些,截图自Notepad++.其中ANSI在中国大陆即为GBK(以前是GB2312),最常用的是 GBK 和 UTF8无BOM 编码格式.后面三个都是有BOM头的文本格式,U ...
- JAVA中Map集合遍历
for (Map.Entry<String, String> entry : map.entrySet()) { System.out.println("key= " ...