FTP回复码

news2024/11/16 20:44:49

FTP回复码由3个数字和对应文本组成

恢复定义为3个数字编码,紧跟一个空格 sp,然后是一行文本,以telnet的换行符表是结束
但是,某些情况下,文本内容太长超过一行,这就需要在第一行和最后一行特殊处理。处理格式如下:
第一行: 3位编码-text文本1
文本2…
其他行开头需要用户进程做行检测判断是否达到最后行
所以其他行开头若也存在3位相同编码的情况,需要人为添加空格解决歧义。
文本3…
最后一行:3位相同编码 (可选择进行添加最后一行文本) telnet行结束符"\r\n"
在这里插入图片描述

第一个数字表示响应状态的良好程度:好、坏、不完整。

简单的用户进程将能够通过简单地检查第一个数字来确定其下一步操作(按计划进行、重做、缩减等)

1:1yz Positive Preliminary reply
正在启动请求的操作,在继续执行新命令之前等待另一个答复。 (用户进程在完成回复之前发送另一个命令将违反协议;但是服务器 FTP 进程应该对在前一个命令正在进行时对到达的任何命令进行排队。)这种类型的回复可用于指示命令被接受,用户进程现在可能会注意数据连接,以用于难以同时监视的实现。FTP服务器进程每个命令最多可以发送一个 1yz 回复。
2:2yz Positive Completion reply
请求的操作已成功完成。 可能会发起新的请求。
3:3yz Positive Intermediate reply
命令已被接受,但要求的行动被搁置,等待收到进一步的信息。 用户应发送另一个指定此信息的命令。 此回复用于命令序列组。
4:4yz Transient Negative Completion reply
该命令未被接受且请求的操作未发生,但错误情况是暂时的,可能会再次请求该操作。 如果有的话,用户应该返回到命令序列的开头。 很难为“瞬态”赋予含义,尤其是当两个不同的站点(服务器进程和用户进程)必须就解释达成一致时。
4yz 类别中的每个回复的时间值可能略有不同,但目的是鼓励用户进程重试。 确定回复是否属于 4yz 或 5yz(永久否定)类别的经验法则是,如果可以重复命令而不改变命令形式或用户或服务器的属性(例如, 命令拼写相同,使用的参数相同;用户不更改他的文件访问权限或用户名;服务器不提供新的实现。)
5: 5yz Permanent Negative Completion reply
该命令没有被接受,所要求的行动也没有发生。不鼓励用户进程重复相同的请求(以相同的顺序)。甚至一些“永久的”错误条件也可以被纠正,因此人类用户可能希望在将来的某个时候(例如,在拼写被改变之后,或者用户已经改变了他的目录状态之后)通过直接操作指示他的用户进程重新启动命令序列。

第二个数字进一步表示错误类型

一个用户进程想要大致知道发生了什么类型的错误(例如文件系统错误,命令语法错误)可以检查第二个数字

1:x0z Syntax
这些回复指的是语法错误、语法正确但不适合任何功能类别的命令、未实现或多余的命令。
2:x1z Information
这些是对信息请求的回复,例如状态或帮助。
3:x2z Connections
关于控制和信息连接的回复
4:x3z Authentication and accounting
关于登陆进程和核算程序的回复
4:x4z Unspecified as yet
未被指定
5:x5z File system
这些回复指示服务器文件系统相对于请求的传输或其他文件系统操作的状态。

第三个数字用于更好的信息分类

第三个数字给出了由第二个数字指定的每个功能类别的更精细的含义等级。
状态码定义语义
200Command okay命令正常
500Syntax error, command unrecognized语法错误,命令无法识别。如命令过长
501Syntax error in parameters or arguments参数或自变量中的语法错误
202Command not implemented, superfluous at this site命令未执行,在此站点是多余的
502Command not implemented命令未执行
503Bad sequence of commands命令顺序错误
504Command not implemented for that parameter此参数下的命令功能未实现
110Restart marker reply重启标记,固定回复格式:MARK cccc = ssss cccc表示客户机进程数据流标记,ssss表示服务器标记
211System status, or system help reply系统状态或系统帮助
212Directory status目录状态
213File Status文件状态
214Help message关于如何使用服务器或特定非标准命令
215NAME system type其中 NAME 是 Assigned Numbers 文档中列表中的官方系统名称
120Service ready in nnn minutes.服务等待就绪时间
220Service ready for new user服务已为新用户准备就绪
221Service closing control connection关闭控制连接
421Service not available, closing control connection服务不可用,正在关闭控制连接
125Data connection already open; transfer starting数据连接已经打开;传输开始
225Data connection open; no transfer in progress数据连接打开;没有传输
425Can’t open data connection无法打开数据连接
226Closing data connection正在关闭数据连接
426Connection closed; transfer aborted连接关闭;传输中止
227Entering Passive Mode进入被动模式
230User logged in, proceed用户登录
530Not logged in未登录
331User name okay, need password用户名正确,需要密码
332Need account for login需要账户登录
532Need account for storing files需要账户来存储文件
150File status okay; about to open data connection文件状态正常;即将打开数据连接
250Requested file action okay, completed请求的文件操作正常,已完成
257“PATHNAME” created创建"路径名"
350Requested file action pending further information.请求的文件操作等待更多信息
450Requested file action not taken.File unavailable请求的文件操作未执行。文件忙
550Requested action not taken.File unavailable未执行请求的操作。文件未找到
451Requested action aborted. Local error in processing请求的操作已中止。正处理局部错误
551Requested action aborted. Page type unknown请求的操作已中止。 页面类型未知
452Requested action not taken.Insufficient storage space in system未执行请求的操作。系统存储空间不足
552Requested file action aborted.Exceeded storage allocation (for current directory or dataset)请求的文件操作中止。超出存储
553Requested action not taken. File name not allowed未采取请求的操作。 不允许的文件名

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/136663.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C++模拟实现栈(stack)和队列 (queue)

目录 一、栈(stack) 的介绍 二、队列(queue) 的介绍 三、容器适配器 二、deque的简单介绍 三、模拟实现stack 3.1 stack.h 3.2 test.cpp 四、模拟实现queue 4.1 queue.h 4.2 test.cpp 一、栈(stack) 的介绍 1. stack是一种容器适配…

字符串、内存函数的介绍(13)

目录 1、字符串函数 1、strlen 模拟实现: 2、strcpy 模拟实现: 3、strcat 模拟实现: 4、strcmp 模拟实现: 5、strncpy 6、strncat 7、strncmp 8、strstr 模拟实现: 9、strtok 10、strerror 11、其他字…

回顾2022年5月IB全球统考成绩,这些学校IB成绩非常亮眼

IB大考成绩放榜,全球17,3878名学生在2022年5月的考试中获得文凭课程(DP)和职业课程(CP)的成绩。今年全球640位考生获得满分45分,全球平均分31.98分。以下是部分公布公布成绩的学校: 成都树德中学国际部:在2022年的全球…

电商维权控价方法论

电商经济繁荣发展,品牌销售渠道多样化,带来流量的同时,各种渠道问题也暴露出来,如,低价、侵权……渠道秩序面临着严峻挑战,品牌生命周期也受到了威胁。所以,越来越多的品牌选择维权控价&#xf…

2022年终总结与2023新年展望

前言 时间过得太快了,虽然写博客已经很多年了,但是年终总结一直由于种种原因没有写过,2022年确实是魔幻的一年,不知不觉自己也已经研二了,因为疫情的原因突然放开,提前放假回家,借此机会写一下…

Git(七) - IDEA 集成 GIT

一、配置 Git 忽略文件 (1)问题1:为什么要忽略他们? 答:与项目的实际功能无关,不参与服务器上部署运行。把它们忽略掉能够屏蔽IDE工具之 间的差异。 (2)问题2:怎么忽略? …

TP可能用到的函数

说明 该文章来源于同事lu2ker转载至此处,更多文章可参考:https://github.com/lu2ker/ 文章目录说明in_array()filter_var()class_exists()strpos()escapeshellarg()escapeshellcmd()preg_replace()parse_str()无字母数字下划线的webshellstr_replace()e…

GNN algorithm(4): HAN, Heterogeneous Graph Attention Network

目录 background (1) heterogeneity of graph (2) semantic-level attention (3) Node-level attention (4) HAN contributions 2. Related Work 2.1 GNN 2.2 Network Embedding 3. Preliminary background 4. Proposed Model 4.1 Node-level attention ideas: …

Unity脚本(四)

视频教程:https://www.bilibili.com/video/BV12s411g7gU?p149 目录 键盘输入 InputManager 键盘输入 当通过名称指定的按键被用户按住时返回true: bool resultInput.GetKey(KeyCode.A); 当用户按下指定名称按键时的那一帧返回true:…

Python学习笔记——变量和简单数据类型

编码默认情况下,Python 3 源码文件以 UTF-8 编码,所有字符串都是 unicode 字符串。 当然你也可以为源码文件指定不同的编码。标识符第一个字符必须是字母表中字母或下划线 _ 。标识符的其他的部分由字母、数字和下划线组成。标识符对大小写敏感。在 Pyth…

【深度学习】机器学习\深度学习常见相关公开数据集汇总(图像处理相关数据集、自然语言处理相关数据集、语音处理相关数据集)

一、前言 1. 介绍 常来说,深度学习的关键在于实践。从图像处理到语音识别,每一个细分领域都有着独特的细微差别和解决方法。 然而,你可以从哪里获得这些数据呢?现在大家所看到的大部分研究论文都用的是专有数据集,这…

超声波测距传感器认知

目录 一、超声波测距传感器认知 二、从零编程实现超声波测距 三、项目——感应开关盖垃圾桶 1、开发步骤 2、感应开关盖垃圾桶代码测试 一、超声波测距传感器认知 超声波测距模块是用来测量距离的一种产品,通过发送和接收超声波,利用时间差和声音…

【网络】udp_socket编程

目录 1.认识端口号 1.1 理解端口号和进程ID 1.2 理解源端口号和目的端口号 2.认识TCP协议 3.认识UDP协议 4.网络字节序 5.socket编程接口 5.1socket常见API 5.2sockaddr结构 sockaddr结构 sockaddr_in 结构 in_addr结构 6.简单的UDP网络程序 6.1创建套接字 6.2 …

【Docker】三 镜像容器常用命令

这里写目录标题1 配置镜像加速器2 Docker镜像常用命令2.1 搜索镜像2.2 下载镜像[重要]2.3 列出镜像[重要]2.3 删除本地镜像[重要]2.4 保存镜像2.5 加载镜像2.6 构建镜像[重要]3 容器常用命令3.1 新建并启动容器[重要]3.2 列出容器[重要]3.3 停止容器[重要]3.4 强制停止容器[重要…

你可以不用Git,但不能不会Git(三)基础(下)

目录 一.将文件添加至忽略列 二.日志记录操作 三.比较文件差异 四.还原文件 一.将文件添加至忽略列 一般我们总会有些文件无需纳入Git的管理,也不希望它们总出现在未跟踪文件列表。通常都是些自动生成的文件,比如日志文件,或者编译过程中…

重学 Java 设计模式-结构型模式-适配器模式

重学 Java 设计模式-结构型模式-适配器模式 内容摘自:添加链接描述 适配器模式介绍 图片来自:https://refactoringguru.cn/design-patterns/adapter(opens new window) 适配器模式的主要作用就是把原本不兼容的接口,通过适配修改做到统一。…

canva绘制(二次、三次)贝塞尔曲线并且图片在曲线上运动

下图为实现效果&#xff08;图片在三次贝塞尔曲线中运动&#xff09; <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"…

Spring之注解开发

目录 一&#xff1a;Bean基本注解开发 二&#xff1a;Bean依赖注入注解开发 三&#xff1a;非自定义Bean注解开发 四&#xff1a;Bean配置类的注解开发 五&#xff1a;Spring配置其他注解 六&#xff1a;Spring注解的解析原理 一&#xff1a;Bean基本注解开发 Spring除了…

【区块链】区块链技术学习总结

文章目录一、区块链技术简介1.1 区块链概念1.2 区块链应用1.2.1 区块链1.0技术&#xff1a;比特币1.2.2 区块链2.0技术&#xff1a;以太坊1.2.3 区块链3.0技术&#xff1a;价值互联网二、区块链1.0技术比特币2.1 比特币2.1.1 比特币概念2.1.2 比特币性质2.1.3 比特币解决的问题…

Springboot扩展点之BeanDefinitionRegistryPostProcessor

前言通过这篇文章来大家分享一下&#xff0c;另外一个Springboot的扩展点BeanDefinitionRegistryPostProcessor&#xff0c;一般称这类扩展点为容器级后置处理器&#xff0c;另外一类是Bean级的后置处理器&#xff1b;容器级的后置处理器会在Spring容器初始化后、刷新前这个时间…