一、前端使用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服务器的更多相关文章

  1. 将windows下的文件上传到Linux服务器上

    版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/lx_Frolf/article/deta ...

  2. Struts2框架下的文件上传文件类型、名称约定

    Struts2框架下的文件上传机制:1.通过multipart/form-data form提交文件到服务器2.文件名是通过什么地方设置的?在strust2的FileUploadInterceptor ...

  3. linux下将文件上传到svn服务器

    linux下将文件上传到svn服务器 摘自:https://blog.csdn.net/sky_yangge/article/details/41544773 2014年11月27日 16:47:57 ...

  4. 通过XShell实现windows文件上传到Linux服务器上

    .XShell上传文件到Linux服务器上 在学习Linux过程中,我们常常需要将本地文件上传到Linux主机上,这里简单记录下使用Xsheel工具进行文件传输 1:首先连接上一台Linux主机 2: ...

  5. ssm框架下实现文件上传

      1.由于ssm框架是使用Maven进行管理的,文件上传所需要的jar包利用pom.xml进行添加,如下所示: <properties> <commons-fileupload.v ...

  6. ssm框架下的文件上传和文件下载

    最近在做一个ssm的项目,遇到了添加附件和下载的功能,在网上查了很多资料,发现很多都不好用,经过摸索,发现了一套简便的方法,和大家分享一下. 1.在自己已经构建好的maven  web项目中 pom. ...

  7. 第一零四天上课 PHP TP框架下的文件上传

    控制器代码(TestController.class.php) <?php namespace Home\Controller; use Home\Controller\EmptyControl ...

  8. 中文名文件上传到linux服务器上以后文件名会乱码(openoffice)

    1.中文名文件上传后保存在linux服务器上文件名会乱码,但是我们通过SSH直接对服务器上的一个文件进行重命名是可以使用中文的,而且显示出来是正确的,这说明服务器是可以支持中文的. 2.而为什么上传的 ...

  9. 本地文件上传到Linux服务器

    1.从服务器上下载文件scp username@servername:/path/filename /var/www/local_dir(本地目录) 例如scp root@192.168.0.101: ...

随机推荐

  1. 【Linux】【Services】【Package】编译安装

    程序包编译安装:         testapp-VERSION-release.src.rpm --> 安装后,使用rpmbuild命令制作成二进制格式的rpm包,而后再安装:         ...

  2. 【Java基础】JAVA中优先队列详解

    总体介绍 优先队列的作用是能保证每次取出的元素都是队列中权值最小的(Java的优先队列每次取最小元素,C++的优先队列每次取最大元素).这里牵涉到了大小关系,元素大小的评判可以通过元素本身的自然顺序( ...

  3. SSM和springboot对比

    今天在开源中国上看到一篇讲SSM.SpringBoot讲的不错的回答,分享! https://www.oschina.net/question/930697_2273593 一.SSM优缺点应该分开来 ...

  4. 【力扣】188. 买卖股票的最佳时机 IV

    给定一个整数数组 prices ,它的第 i 个元素 prices[i] 是一支给定的股票在第 i 天的价格. 设计一个算法来计算你所能获取的最大利润.你最多可以完成 k 笔交易. 注意:你不能同时参 ...

  5. Python enumerate():使用计数器简化循环

    摘要:当您需要计数和迭代中的值时,Pythonenumerate()允许您编写 Pythonicfor循环.最大的优点enumerate()是它返回一个带有计数器和值的元组,因此您不必自己增加计数器. ...

  6. Mysql实例 表设计

    目录 一.介绍 二.设计表格 三.查询 查都有哪些公司 查A公司都放了哪些广告 查A公司10月份该交多少广告费 四.分析 表结构设置 sql语句 其它功能 一.介绍 有一个公司叫月亮集团,他们旗下有很 ...

  7. Python绘制柱状图

    1.1Python绘制柱状图对应代码如下所示 import matplotlib.pyplot as plt import numpy as np from pylab import mpl mpl. ...

  8. Linux_ShellCode总结

    在寄存器都是非理想值情况下(shellcode可根据环境具体触发时寄存器的值做长度调整),我本着最优通用的原则,整理了Linux下32位和64位最短通用shellcode的编写. 32位 有" ...

  9. 使用.NET 6开发TodoList应用(4)——引入数据存储

    需求 作为后端CRUD程序员(bushi,数据存储是开发后端服务一个非常重要的组件.对我们的TodoList项目来说,自然也需要配置数据存储.目前的需求很简单: 需要能持久化TodoList对象并对其 ...

  10. js Date()获取时间,格式化输出,时间比较大小

    1.获取时间并且格式化输出 new Date().toLocaleString('cn',{hour12:false}) //2018/12/6 17:57:15 new Date().toLocal ...