【摸鱼高手】搭个自己的FTP服务器玩玩

本文介绍了如何在Windows系统上搭建FTP服务器,详细讲解了FTP服务器的概念、工作原理以及常见的搭建步骤。同时,文章还探讨了通过Java程序实现FTP文件的上传和下载,包括相关技术和配置,以及在开发过程中遇到的问题和解决方案。
摘要由CSDN通过智能技术生成

前言

  • 大家好,我是小诚,在开始学习之前,先给大家推荐下最近筹划的【技术圈子】,在没有更文的20多天里,一直在梳理之前的文章知识和学习资源,现在已经初步梳理完成,圈子中所有资源都免费分享,资源包括但不限于面试资源、简历模板、年终汇报PPT、CSDN VIP下载资源等等,需要得请点击主页查看,期待您的加入。

  • 如果文章对你有帮助,可以帮忙一键三连和专栏订阅哦!

  • 本篇文章重点介绍:Window环境搭建FTP服务器,JAVA程序实现FTP服务器文件上传、下载功能。

🏚️ 二、完成效果

  1、上传文件到FTP服务器:

  2、从FTP服务器下载文件到本地:

🏠 三、Window系统FTP服务器搭建

  在搭建FTP服务器之前,先跟大家介绍下什么是FTP服务器,不然怕有些小伙伴可能只是有个模糊的概念,学习要尽量知其然,知其所以然,不要一知半解,否则自己用着也不踏实。

♈ 3.1、FTP服务器怎么玩

  在介绍前,我们先来看看搭建完FTP服务器后能怎么玩,不然总是有些小伙伴觉的文章太长看到一半就跑路了,错过就没有了!

  1、上传、下载小视频(共享文件),自定义权限控制,控制使用用户。

  2、实现某些业务场景下文件存储和文件下载(即文件服务器操作)。

  3、更多玩法等你开发,尽情发挥你的脑洞...

♉ 3.2、FTP(File Transfer Protocol,文件传输协议)

  先简单认识下FTP协议,FTP即文件传输协议的简称,它是TCP/IP协议簇中的一员,也是Internet上最早使用的协议之一,通过它可以实现电脑与电脑间对文件的各种操作(如文件的增、删、改、查、传送等),FTP的目标是提高文件的共享性,提供非直接使用远程计算机,实现计算机文件的相互操作,使存储介质对用户透明和可靠高效地传送数据。

  它是基于C/S(客户端/服务端)模型设计,工作在网络体系结构中的应用层,使用TCP进行传输,保证客户与服务器之间的连接是可靠的。

  支持的连接方式:

  FTP支持Standard (PORT方式,主动方式),Passive (PASV,被动方式)两种连接模式,连接的流程大致如下:

  1、FTP客户端发起FTP会话,与FTP服务器建立相应的连接,在会话期间,FTP会建立控制信息进程与数据进程两个连接。

  2、控制进程连接的用途: 用于传输FTP内部命令以及命令的响应等控制信息,无法进行数据传输。

  3、数据进程连接的用途: 用于客户端与服务端之间数据的传输,它是全双工的,可以支持双向数据传输,当数据传输完成后,它就会撤销然后回到FTP会话状态,直到控制连接进程也取消,退出整个FTP会话。

  PORT模式:

  FTP客户端会与服务端的TCP 21端口创建连接(控制连接),用于发送命令,当客户端需要接收数据时,会通过这个连接向服务端发送PORT命名,PORT命令中包含了会使用什么端口来接收服务端传输的数据,此时,服务端会通过TCP 20端口跟FTP客户端创建连接(数据连接)完成数据传输。

  Passive模式:

  FTP客户端会与服务端的TCP 21端口创建连接(控制连接),用于发送命令,当客户端需要接收数据时,会通过这个连接向服务端发送Pasv命名,服务器收到Pasv命令后,打开一个临时端口(端口号大于1023小于65535)并且通知客户端在这个端口上传送数据的请求,客户端连接FTP服务器此端口,然后FTP服务器将通过这个端口传送数据。

  说明:上面FTP协议知识介绍参考百度百科:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值