什么是FTP
  
   1. FTP协议

  什么是FTP呢?FTP 是 TCP/IP 协议组中的协议之一,是英文File Transfer Protocol的缩写。该协议是Internet文件传送的基础,它由一系列规格说明文档组成,目标是提高文件的共享性,提供非直接使用远程计算机,使存储介质对用户透明和可靠高效地传送数据。简单的说,FTP就是完成两台计算机之间的拷贝,从远程计算机拷贝文件至自己的计算机上,称之为“下载(download)”文件。若将文件从自己计算机中拷贝至远程计算机上,则称之为“上载(upload)”文件。在TCP/IP协议中,FTP标准命令TCP端口号为21,Port方式数据端口为20。

  2. FTP服务器和客户端

  同大多数Internet服务一样,FTP也是一个客户/服务器系统。用户通过一个客户机程序连接至在远程计算机上运行的服务器程序。依照 FTP 协议提供服务,进行文件传送的计算机就是 FTP 服务器,而连接FTP服务器,遵循FTP协议与服务器传送文件的电脑就是FTP客户端。用户要连上 FTP 服务器,就要用到 FPT 的客户端软件,通常 Windows自带“ftp”命令,这是一个命令行的 FTP 客户程序,另外常用的 FTP 客户程序还有 CuteFTP、Ws_FTP、Flashfxp、LeapFTP、流星雨-猫眼等。

  3. FTP用户授权

  (1)用户授权

  要连上 FTP 服务器(即“登陆”),必须要有该 FTP 服务器授权的帐号,也就是说你只有在有了一个用户标识和一个口令后才能登陆FTP服务器,享受FTP服务器提供的服务。

  (2)FTP地址格式

  FTP地址如下:
  ftp://用户名:密码@FTP服务器IP或域名:FTP命令端口/路径/文件名
  上面的参数除FTP服务器IP或域名为必要项外,其他都不是必须的。如以下地址都是有效FTP地址:
  ftp://foolish.6600.org
  ftp://list:list@foolish.6600.org
  ftp://list:list@foolish.6600.org:2003
  ftp://list:list@foolish.6600.org:2003/soft/list.txt

  (3)匿名FTP

  互连网中有很大一部分 FTP 服务器被称为“匿名”(Anonymous)FTP 服务器。这类服务器的目的是向公众提供文件拷贝服务,不要求用户事先在该服务器进行登记注册,也不用取得FTP服务器的授权。
  Anonymous(匿名文件传输)能够使用户与远程主机建立连接并以匿名身份从远程主机上拷贝文件,而不必是该远程主机的注册用户。用户使用特殊的用户名“anonymous”登陆FTP服务,就可访问远程主机上公开的文件。许多系统要求用户将Emai1地址作为口令,以便更好地对访问进行跟综。匿名FTP一直是Internet上获取信息资源的最主要方式,在Internet成千上万的匿名FTP主机中存储着无以计数的文件,这些文件包含了各种各样的信息,数据和软件。人们只要知道特定信息资源的主机地址,就可以用匿名FTP登录获取所需的信息资料。虽然目前使用WWW环境已取代匿名FTP成为最主要的信息查询方式,但是匿名FTP仍是 Internet上传输分发软件的一种基本方法。如red hat 、autodesk等公司的匿名站点。

  4. FTP的传输模式

  FTP协议的任务是从一台计算机将文件传送到另一台计算机,它与这两台计算机所处的位置、联接的方式、甚至是是否使用相同的操作系统无关。假设两台计算机通过ftp协议对话,并且能访问Internet, 你可以用ftp命令来传输文件。每种操作系统使用上有某一些细微差别,但是每种协议基本的命令结构是相同的。
  FTP的传输有两种方式:ASCII传输模式和二进制数据传输模式。
  1.ASCII传输方式:假定用户正在拷贝的文件包含的简单ASCII码文本,如果在远程机器上运行的不是UNIX,当文件传输时ftp通常会自动地调整文件的内容以便于把文件解释成另外那台计算机存储文本文件的格式。
但是常常有这样的情况,用户正在传输的文件包含的不是文本文件,它们可能是程序,数据库,字处理文件或者压缩文件(尽管字处理文件包含的大部分是文本,其中也包含有指示页尺寸,字库等信息的非打印字符)。在拷贝任何非文本文件之前,用binary 命令告诉ftp逐字拷贝,不要对这些文件进行处理,这也是下面要讲的二进制传输。
  2.二进制传输模式:在二进制传输中,保存文件的位序,以便原始和拷贝的是逐位一一对应的。即使目的地机器上包含位序列的文件是没意义的。例如,macintosh以二进制方式传送可执行文件到Windows系统,在对方系统上,此文件不能执行。
  如果你在ASCII方式下传输二进制文件,即使不需要也仍会转译。这会使传输稍微变慢 ,也会损坏数据,使文件变得不能用。(在大多数计算机上,ASCII方式一般假设每一字符的第一有效位无意义,因为ASCII字符组合不使用它。如果你传输二进制文件,所有的位都是重要的。)如果你知道这两台机器是同样的,则二进制方式对文本文件和数据文件都是有效的。

  5. FTP的工作方式

  FTP支持两种模式,一种方式叫做Standard (也就是 PORT方式,主动方式),一种是 Passive (也就是PASV,被动方式)。 Standard模式 FTP的客户端发送 PORT 命令到FTP服务器。Passive模式FTP的客户端发送 PASV命令到 FTP Server。
  下面介绍一个这两种方式的工作原理:
  Port模式FTP 客户端首先和FTP服务器的TCP 21端口建立连接,通过这个通道发送命令,客户端需要接收数据的时候在这个通道上发送PORT命令。 PORT命令包含了客户端用什么端口接收数据。在传送数据的时候,服务器端通过自己的TCP 20端口连接至客户端的指定端口发送数据。 FTP server必须和客户端建立一个新的连接用来传送数据。
  Passive模式在建立控制通道的时候和Standard模式类似,但建立连接后发送的不是Port命令,而是Pasv命令。FTP服务器收到Pasv命令后,随机打开一个高端端口(端口号大于1024)并且通知客户端在这个端口上传送数据的请求,客户端连接FTP服务器此端口,然后FTP服务器将通过这个端口进行数据的传送,这个时候FTP server不再需要建立一个新的和客户端之间的连接。
  很多防火墙在设置的时候都是不允许接受外部发起的连接的,所以许多位于防火墙后或内网的FTP服务器不支持PASV模式,因为客户端无法穿过防火墙打开FTP服务器的高端端口;而许多内网的客户端不能用PORT模式登陆FTP服务器,因为从服务器的TCP 20无法和内部网络的客户端建立一个新的连接,造成无法工作。
 

 

FlashFXP使用教程
  

  

Flashfxp功能强大的FXP/FTP软件,融合了一些其他优秀FTP软件的优点,如像CuteFTP一样可以比较文件夹,支持彩色文字显示;像BpFTP支持多文件夹选择文件,能够缓存文件夹;像LeapFTP一样的外观界面,甚至设计思路也差相仿佛。支持文件夹(带子文件夹)的文件传送、删除;支持上传、下载及第三方文件续传;可以跳过指定的文件类型,只传送需要的文件;可以自定义不同文件类型的显示颜色;可以缓存远端文件夹列表,支持FTP代理及Socks3&4;具有避免空闲功能,防止被站点踢出;可以显示或隐藏“隐藏”属性的文件、文件夹;支持每个站点使用被动模式等。

1.打开FlashFXP,点击“站点”/“站点管理器”。快捷键F4。


2.在“站点管理器”对话框中,点击“新建站点”,在弹出的对话框中,输入一个站点名称,例如nbgg.vicp.net

3.在常规面板,输入FTP地址 ftp://nbgg.vicp.net 用户名称nbgg 密码nbgg 然后点击“应用”按钮,站点就设置好了。点击“连接”按钮,连接站点。


4.连接上站点之后,在本地磁盘,找到要上传的站点目录,选中后右键单击,单击“传送”,上传网站就这样轻易实现了。 同样的方法,选中远程空间中的文件或者文件夹,点右键,点击“传送”,就可以下载到本地。


 

FTP常见错误及解决方法
 
421错误:同时连接该ftp的人数过多,超出FTP设置的人数了,请等人少的时候再连接。
530“not login\": 用户名或密码错误,获得正确的密码重新连接。
“连接超时,无法连接”错误:该ftp暂时关机,可能是服务器重新启动,或者FTP进行维护,等FTP正常再连接。
“无法解析域名”:
原因1:该ftp的域名输入错误,如漏打一个字母,使用了全角标点等。
解决方法:去发布该ftp论坛找到正确的域名输入。
原因2:本地的域名解析服务器坏了(是指你的网络服务商的域名解析服务)
解决方法:等本地网络修好即可使用,也可以直接输入ftp的ip地址。
原因3:该ftp修改了域名。
解决方法:去发布该ftp论坛找正确的域名。
“only one …… ip address……”
原因1:使用多线程下载,超过该ftp允许的线程。
解决方法:看看自己是不是已经与该ftp有了连接,如果有了就不要再开新的连接。
原因2:局域网内有其他人连接了该ftp(长城宽带等fttb容易出现)
解决方法:等几个小时,别人断开后,再连接该ftp。
“连接拒绝”:恭喜你,你的ip已经被该ftp封了。
解决方法:等一段时间(由该ftp设定,半小时到一天不等),才能连接该ftp。
如果你的ip地址是动态的话,也可以断开网络,重播上网连接FTP试试。
425 :不能打开数据连接,你可以尝试用PORT模式来代替PASV模式,或者反之。
550 No such file or directory:文件可能已经改名或者删除了
Not connet,access
deny拒绝连接访问错误:不能匿名登录和访问,你必须提供用户名和密码才能登录。
426:关闭连接,中止传输 。FTP 可能正在重新启动,或者服务器维护而关闭。
FTP口令:
文件传输软件的使用格式为:FTP ,如果连接成功,系统将提示用户输入用户名以及口令:
LOGIN:(输入合法的用户名或者“ANONYMOUS”)
PASSWORD:(输入合法的口令,若以“ANONYMOUS”方式登录,一般不用口令)
进入想要连接的FTP站点后,用户就可以进行相应的文件传输操作了,其中一些重要的命令及相似的命令如下:
(1)HELP、?、RHELP、REMOTEHELP
HELP 显示LOCAL端的命令说明,若不接受则显示所有可用命令;
? 相当于HELP,例如:? CD;
RHELP 同HELP,只是它用来显示REMOTE端的命令说明;
REMOTEHELP 相当于RHELP。
(2)ASC(ASCII)、BIN(BINARY)、IMAGE、TYPE
ASCII 切换传输模式为文字模式(只能用来传送DOC文件,因为是7-BIT)
BINARY 切换传输模式为二进制模式(除文字文件外皆用此模式);
IMAGE 相当于BINARY;
TYPE 让你更改或显示目前传输模式。
(3)BYE、QUIT
BYE 退出FTP;
QUIT 相当于BYE。
(4)CD、CDUP、LCD、PWD、!
CD 改变当前工作目录,例如:CD \\PUB;
CDUP 回到上一层目录,相当于你打CD..;
LCD 让你更改或显示LOCAL端的工作目录,例如:LCD \\TMP;
PWD 显示目前的工作目录(REMOTE端);
! 让你执行外壳命令,例如: !LS。
(5)DELETE、MDELETE、RENAME
DELETE 删除REMOTE端的文件
MDELETE 批量删除文件,需配合?或*;
RENAME 更改REMOTE端的文件名。
(6)GET、MGET、PUT、MPUT、RECV、SEND
GET 下传文件;
MGET 批量下传文件,需配合万用字元,例如:MGET *.GZ;
PUT 上传文件;
MPUT 批量上传文件,需配合万用字元;
RECV 相当于GET(RECV为RECEIVE的简写);
SEND 相当于PUT。
(7)HASH、PROMPT、VERBOSE、STATUS、BELL
HASH 切换#字号的出现,每一个#字号表示传送了1024/8192 BYTES;
PROMPT 切换INTERACTIVE ON/OFF;
VERBOSE 切换所有文件传输过程的显示;
STATUS 显示目前的一些参数;
BELL 当指令做完时会发出一声叫声。
(8)LS、DIR、MLS、MDIR、MKDIR、RMDIR
LS 有点象UNIX下的LS(LIST)命令;
DIR 相当于LS -L(LIST-LONG);
MLS 只是将远端某目录下的文件存于LOCAL端的某文件里;
MDIR 相当于MLS;
MKDIR 象DOS下的MD(创建子目录)一样;
RMDIR 象DOS下的RD(删除子目录)一样;

(9)OPEN、CLOSE、DISCONNECT、USER
OPEN 连接某个远端FTP服务器;
CLOSE 关闭目前的连接;
DISCONNECT 相当于CLOSE;
USER 再输入一次用户名和口令(有点像UNIX下的SU)。
※◆FTP登陆不上的几个信息提示含义释疑◆※
Connecting to ..., Port 21 (#1)
ERROR: Connection timed out
这个表明对方未开机,也可能是对方不在你能访问的范围内
-----------------------------------
Connecting to ... Port 21 (#1)
ERROR: Connection refused
这个一般表明对方已开机,但未开启FTP服务(没有开Serv-U)
也可能为对方不提供在这个端口上的服务
-----------------------------------
Connecting to ..., Port 21 (#1)
Connected. Waiting for response.
Disconnected from server.
Connection attempt failed. Waiting for retry...
出现这个信息实在是很倒霉,你极有可能被对方Ban了。
如果只是Ban几分钟or几小时or一天还好,不然只有和站长说说好话,让他给你解封吧。
-----------------------------------
110 Restart marker reply. In this case, the text is exact and not left to the particular implementation; it must read: MARK yyyy = mmmm where yyyy is User -process data stream marker, and mmmm server\'s equivalent marker (note the spaces between markers and \"=\". 重新启动标志回应。这种情况下,信息是精确的并且不用特别的处理;可以这样看:标 记 yyyy = mmm 中 yyyy是 用户进程数据流标记,mmmm是服务器端相应的标记(注意在标记和等号间的空格)
-----------------------------------
120 Service ready in nnn minutes.
服务在NNN时间内可用
-----------------------------------
125 Data connection already open; transfer starting.
数据连接已经打开,开始传送数据.
-----------------------------------
150 File status okay; about to open data connection.
文件状态正确,正在打开数据连接.
-----------------------------------
200 Command okay.
命令执行正常结束.
-----------------------------------
202 Command not implemented, superfluous at this site.
命令未被执行,此站点不支持此命令.
-----------------------------------
211 System status, or system help reply.
系统状态或系统帮助信息回应.
-----------------------------------
212 Directory status.
目录状态信息.
-----------------------------------
213 File status.
文件状态信息.
-----------------------------------
214 Help message.On how to use the server or the meaning
of a particular non标准命令。此回复只对人有用。
-----------------------------------
215 NAME system type. Where NAME is an official system
name from the list in the Assigned Numbers document.
NAME系统类型。
-----------------------------------
220 Service ready for new user.
新连接的用户的服务已就绪
-----------------------------------
221 Service closing control connection.
控制连接关闭
-----------------------------------
225 Data connection open; no transfer in progress.
数据连接已打开,没有进行中的数据传送
-----------------------------------
226 Closing data connection. Requested file action successful (for example, file transfer or file abort).
正在关闭数据连接。请求文件动作成功结束(例如,文件传送或终止)
-----------------------------------
227 Entering Passive Mode (h1,h2,h3,h4,p1,p2).
进入被动模式
-----------------------------------
230 User logged in, proceed. Logged out if appropriate.
用户已登入。 如果不需要可以登出。
-----------------------------------
250 Requested file action okay, completed.
被请求文件操作成功完成
-----------------------------------
257 \"PATHNAME\" created.
路径已建立
-----------------------------------
331 User name okay, need password.
用户名存在,需要输入密码
-----------------------------------
332 Need account for login.
需要登陆的账户
-----------------------------------
350 Requested file action pending further information
对被请求文件的操作需要进一步更多的信息
-----------------------------------
421 Service not available, closing control
connection.This may be a reply to any command if the service knows it must shut down.
服务不可用,控制连接关闭。这可能是对任何命令的回应,如果服务认为它必须关闭
421 Too many users - please try again later.
太多用户,那就过会再连
-----------------------------------
425 Can\'t open data connection.
打开数据连接失败
-----------------------------------
426 Connection closed; transfer aborted.
连接关闭,传送中止。
-----------------------------------
450 Requested file action not taken.
对被请求文件的操作未被执行
-----------------------------------
451 Requested action aborted. Local error in processing.

请求的操作中止。处理中发生本地错误。
-----------------------------------
452 Requested action not taken. Insufficient storage
space in system.File unavailable (e.g., file busy).
请求的操作没有被执行。 系统存储空间不足。 文件不可用
-----------------------------------
500 Syntax error, command unrecognized. This may include
errors such as command line too long.
语法错误,不可识别的命令。 这可能是命令行过长。
-----------------------------------
501 Syntax error in parameters or arguments.
参数错误导致的语法错误
-----------------------------------
502 Command not implemented.
命令未被执行
-----------------------------------
503 Bad sequence of commands.
命令的次序错误。
-----------------------------------
504 Command not implemented for that parameter.
由于参数错误,命令未被执行
-----------------------------------
530 Not logged in.
一般来说是密码错误。
530 Sorry, no ANONYMOUS access allowed.
这个就是不许匿名登录
530 Not logged in, unauthorized IP address
这个有点麻烦,你的IP不在站长允许访问的IP范围内,只有和站长联系,让他把你的IP网段加入Allow Access列表里吧
530 Not logged in, only one(也有可能是two or three) session
from same IP allowed at a time.
每个IP只能开一个(也有可能是two or three) 下载,就不要用多线程啦,小心Ban了你。
-----------------------------------
532 Need account for storing files.
存储文件需要账户信息
-----------------------------------
550 Requested action not taken. File unavailable (e.g.,
file not found, no access).
请求操作未被执行,文件不可用。
-----------------------------------
551 Requested action aborted. Page type unknown.
请求操作中止,页面类型未知
-----------------------------------
552 Requested file action aborted. Exceeded storage
allocation (for current directory or dataset).
对请求文件的操作中止。 超出存储分配
-----------------------------------
553 Requested action not taken. File name not allowed
请求操作未被执行。 文件名不允许
-----------------------------------
这种错误跟http协议类似,大致是:
2开头--成功
3开头--权限问题
4开头--文件问题
5开头--服务器问题


  有问题给我留言COPYRIGHT © 2003-2008 Http://nbgg.net.cn All Rights Reserved『阿拉宁波网』旗下网站