VSFTPD+NGINX 基础

一.VSFTPD简介

1.Linux 的组件(一款软件),安装到Linux后通过java代码(FtpClient)实现文件上传.

2. VSFTPD 基于FTP协议

3.为什么要使用VSFTPD

3.1 之前实现文件上传

tomcat

图片? 没有

 

图片

 

tomcat

 

3.2 使用VSFTPD后优化

3.2.1 如果希望在客户端直接访问图片服务器中的图片,由于VSFTPD是基于FTP协议的,客户端浏览器是需要通过http协议访问图片.

3.2.1.1 解决办法使用Nginx进行反向代理.

图片服务器

安装VSFTPD组件的服务器

 

tomcat

 

tomcat

 

4.可以使用格式在浏览器中访问到对应的图片(不推荐这样使用)

4.1 在谷歌浏览器中直接访问到ftpuser目录

4.2 在IE中访问的是linux的根目录

ftp://ftpuser:[email protected]

 

二. FtpClient

1. java技术,使用FtpClient使用使用java代码上传文件到vsftpd服务端

2. 代码示例

      FTPClient ftp = new FTPClient();

      //设置ip和端口,写在用户名和密码上面

      ftp.connect("192.168.139.131", 21);

      //设置用户名和密码

      ftp.login("ftpuser", "ftpuser");

      //设置文件类型

      ftp.setFileType(FTPClient.BINARY_FILE_TYPE);

      InputStream is = new FileInputStream("E:/timg.jpg");

      //第一个参数存储时名称

      ftp.storeFile("abc.jpg", is);

      //退出

      ftp.logout();

3. 使用web项目结合FTPClient完成

tomcat中项目中

MultipartFile获取上传文件流,使用FtpClient上传到LInux中VSFTPD

 

三. 反向代理和正向代理

1. 正向代理

1.1 客户端知道最终要访问的服务器地址.

2. 反向代理

1.2 客户端只知道代理服务器地址,而不知道真实访问的服务器地址.

真实地址2

 

真实地址1

 

反向代理服务器

 

三.nginx配置(已经安装完成)

1. 进入到nginx/conf文件夹修改nginx.conf

1.1 赋予ftpuser用户权限

1.2 设置代理的目录

1.2.1 root : 代理的目录

1.2.2 index: 欢迎项

1.2.3 如果只配置root不配置index,在浏览器输入ip后依然报403

你可能感兴趣的:(VSFTPD+NGINX 基础)