當前位置:首頁 » 文件傳輸 » 怎麼用ftp
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

怎麼用ftp

發布時間: 2022-01-12 08:37:07

1. 怎樣用ftp上傳

最好用ftpsmart等ftp的工具來上傳,很傻瓜。
dos下命令是這樣:
開始-運行-cmd
ftp xxx.xxx.xxx.xxx
輸入帳號,密碼
上傳文件:put 本地硬碟的文件地址 ftp上的文件地址及文件名
下載文件:get ftp上的文件地址及文件名 本地硬碟的文件地址
具體命令如下:FTP 的命令行格式為: ftp -v -d -i -n -g [ 主機名 ] ,其中
-v 顯示遠程伺服器的所有響應信息;
-n 限制 ftp 的自動登錄,即不使用 .netrc 文件;
-d 使用調試方式;
-g 取消全局文件名。
& FTP 使用的內部命令如下 ( 中括弧表示可選項 ) :

1.![cmd[args] :在本地機中執行交互 sh*ll , exit 回到 ftp 環境,如: !ls*.zip
2.$ macro-ame[args] : 執行宏定義 macro-name 。
3.account[password] : 提供登錄遠程系統成功後訪問系統資源所需的補充口令。
4.append local-file[remote-file] :將本地文件追加到遠程系統主機,若未指定遠程系統文件名,則使用本地文件名。
5.ascii :使用 ascii 類型傳輸方式。
6.bell :每個命令執行完畢後計算機響鈴一次。
7.bin :使用二進制文件傳輸方式。
8.bye :退出 ftp 會話過程。
9.case :在使用 mget 時,將遠程主機文件名中的大寫轉為小寫字母。
10.cd remote-dir :進入遠程主機目錄。
11.cp :進入遠程主機目錄的父目錄。
12.chmod mode file-name :將遠程主機文件 file-name 的存取方式設置為 mode ,如: chmod 777 a.out 。
13.close :中斷與遠程伺服器的 ftp 會話 ( 與 open 對應 ) 。
14.cr :使用 asscii 方式傳輸文件時,將回車換行轉換為回行。
15.delete remote-file :刪除遠程主機文件。
16.debug[debug-value] :設置調試方式, 顯示發送至遠程主機的每條命令,如: deb up 3 ,若設為 0 ,表示取消 debug 。
17.dir[remote-dir][local-file] :顯示遠程主機目錄,並將結果存入本地文件
18.disconnection :同 close 。
19.form format :將文件傳輸方式設置為 format ,預設為 file 方式。
20.get remote-file[local-file] : 將遠程主機的文件 remote-file 傳至本地硬碟的 local-file 。
21.glob :設置 mdelete , mget , mput 的文件名擴展,預設時不擴展文件名,同命令行的 -g 參數。
22.hash :每傳輸 1024 位元組,顯示一個 hash 符號 (#) 。
23.help[cmd] :顯示 ftp 內部命令 cmd 的幫助信息,如: help get 。 與?作用相同。
24.idle[seconds] :將遠程伺服器的休眠計時器設為 [seconds] 秒。
25.image :設置二進制傳輸方式 ( 同 binary) 。
26.lcd[dir] :將本地工作目錄切換至 dir 。
27.ls[remote-dir][local-file] :顯示遠程目錄 remote-dir , 並存入本地文件 local-file 。
28.macdef macro-name :定義一個宏,遇到 macdef 下的空行時,宏定義結束。
29.mdelete[remote-file] :刪除遠程主機文件。
30.mdir remote-files local-file :與 dir 類似,但可指定多個遠程文件,如 : mdir *.o.*.zipoutfile 。
31.mget remote-files :傳輸多個遠程文件。
32.mkdir dir-name :在遠程主機中建一目錄。
33.mls remote-file local-file :同 nlist ,但可指定多個文件名。
34.mode[modename] :將文件傳輸方式設置為 modename , 預設為 stream 方式。
35.modtime file-name :顯示遠程主機文件的最後修改時間。
36.mput local-file :將多個文件傳輸至遠程主機。
37.newer file-name : 如果遠程機中 file-name 的修改時間比本地硬碟同名文件的時間更近,則重傳該文件。
38.nlist[remote-dir][local-file] :顯示遠程主機目錄的文件清單,並存入本地硬碟的 local-file 。
39.nmap[inpattern outpattern] :設置文件名映射機制, 使得文件傳輸時,文件中的某些字元相互轉換, 如: nmap $1.$2.$3[$1 , $2].[$2 , $3] ,則傳輸文件 a1.a2.a3 時,文件名變為 a1 , a2 。 該命令特別適用於遠程主機為非 UNIX 機的情況。
40.ntrans[inchars[outchars] :設置文件名字元的翻譯機制,如 ntrans1R ,則文件名 LLL 將變為 RRR 。
41.open host[port] :建立指定 ftp 伺服器連接,可指定連接埠。
42.passive :進入被動傳輸方式。
43.prompt :設置多個文件傳輸時的交互提示。
44.proxy ftp-cmd :在次要控制連接中,執行一條 ftp 命令,該命令允許連接兩個 ftp 伺服器,以在兩個伺服器間傳輸文件。第一條 ftp 命令必須為 open ,以首先建立兩個伺服器間的連接。
45.put local-file[remote-file] :將本地文件 local-file 傳送至遠程主機。
46.pwd :顯示遠程主機的當前工作目錄。
47.quit :同 bye ,退出 ftp 會話。
48.quote arg1 , arg2... :將參數逐字發至遠程 ftp 伺服器,如: quote syst.
49.recv remote-file[local-file] :同 get 。
50.reget remote-file[local-file] :類似於 get , 但若 local-file 存在,則從上次傳輸中斷處續傳。
51.rhelp[cmd-name] :請求獲得遠程主機的幫助。
52.rstatus[file-name] :若未指定文件名,則顯示遠程主機的狀態, 否則顯示文件狀態。
53.rename[from][to] :更改遠程主機文件名。
54.reset :清除回答隊列。
55.restart marker :從指定的標志 marker 處,重新開始 get 或 put ,如: restart 130 。
56.rmdir dir-name :刪除遠程主機目錄。
57.runique :設置文件名只一性存儲,若文件存在,則在原文件後加後綴 .1 , .2 等。
58.send local-file[remote-file] :同 put 。
59.sendport :設置 PORT 命令的使用。
60.site arg1 , arg2... :將參數作為 SITE 命令逐字發送至遠程 ftp 主機。
61.size file-name :顯示遠程主機文件大小,如: site idle 7200 。
62.status :顯示當前 ftp 狀態。
63.struct[struct-name] :將文件傳輸結構設置為 struct-name , 預設時使用 stream 結構。
64.sunique :將遠程主機文件名存儲設置為只一 ( 與 runique 對應 ) 。
65.system :顯示遠程主機的操作系統類型。
66.tenex :將文件傳輸類型設置為 TENEX 機的所需的類型。
67.tick :設置傳輸時的位元組計數器。
68.trace :設置包跟蹤。
69.type[type-name] :設置文件傳輸類型為 type-name ,預設為 ascii ,如 :type binary ,設置二進制傳輸方式。
70.umask[newmask] :將遠程伺服器的預設 umask 設置為 newmask ,如: umask 3
71.user user-name[password][account] :向遠程主機表明自己的身份,需要口令時,必須輸入口令,如: user anonymousmy@email 。 SDDSA
72.verbose :同命令行的 -v 參數,即設置詳盡報告方式, ftp 伺服器的所有響 應都將顯示給用戶,預設為 on.

2. 如何使用FTP上傳文件

1、下載軟體FileZilla(用的比較多的一款),

3. 怎麼樣使用FTP

一、FTP設置方法
我們這里以 CuteFTP pro 為例,簡單介紹FTP軟體的用法:
首先你可以 點擊這里下載 CuteFTP Pro ,並將該軟體裝在了您的計算機上。
假設您的虛擬主機的ip地址是」61.129.64.99「,ftp用戶名是「 zhang 」,ftp密碼是「 zhang2008 」,現在想將文件「 index.htm 」上傳到伺服器,那麼請按如下步驟操做:
啟動 CuteFTP 程序:
在主頁面中點擊 菜單「文件」選擇「新建」後彈出窗口,選擇「新建ftp網站」;之後會彈出一個窗口,其中的設置如下:
標題:隨便起個自己喜歡的名字
主機地址: 61.129.64.99
用戶名: zhang
口令: zhang2008

之後選擇「類型」選項,顯示如下:

設置數據連接類型為:使用port
設置完畢後,點擊下面的「連接」按鈕,設置窗口將會關閉, CuteFTP 工作窗口會打開,並開始連接伺服器。選擇要上傳的文件直接上傳即可。最後,在瀏覽器上輸入你的網址,檢驗文件是否已正確上載。

二、上傳文件注意事項
FTP登陸後目錄結構如下:

根目錄
|- wwwroot 網站根目錄,網頁文件請上傳到這個目錄.
|- logfiles 網站日誌文件,系統自動產生,不佔用您的空間.
|- database Access 資料庫文件可以存放在這個目錄下,

注意:
您的網頁必需存放在 wwwroot 目錄下才能被訪問,預設網站的文檔按優先順序為 index.htm,index.asp,defualt.htm,default.asp
本網頁文件名為 index.htm 是您的主機自動開設後系統生成的,您可以刪除掉或用自己的覆蓋.
推薦您使用CUTEFTP或者LEAFTP等軟體進行上傳,
如果在上傳中碰到無法列出目錄等情況,請嘗試著把上傳軟體的PASV模式關掉(或者設置為port).

4. 請問怎麼用FTP啊

幾乎所有的ftp工具都是這樣使用的:
輸入待維護站點的ip地址或域名;
輸入你的密碼;
輸入你的埠號;
連接;
做維護操作。

5. FTP 怎麼設置和使用

FTP說簡單一點就是可以進行網路文件共享,可以將你電腦上的資料(一般指的是較大的文件)通過FTP的方式進行公開,也就是將你的電腦設為簡單的伺服器,並且你自己可以設置訪問用戶名和密碼,只要你的電腦是開機的,不管在哪個地方的人都可以通過網路來訪問並下載你共享的文件,前提是要知道你的用戶名和密碼以及訪問的FTP地址

說得很簡單了,不知明白沒有,上面只是關於FTP的理解,要實際使用,則可以通過專業軟體完成,如何你安裝完軟體,應該你不知道的也就知道了,如FTP的地址是什麼,FTP的用戶和密碼怎麼設置,需要共享的文件怎麼選擇等等...

實際方法,說一下簡單的方法吧,自己做過的

1、下載一個Serv-UFTPServerV8的專業FTP軟體,下載地址搜一下,一大堆

2、查一下它的使用說明,網路也很多,沒有的話,直接安裝軟體,中文版的,裡面都有使用說明,你仔細研究一下也就了解了

PS:總的來說,感覺要學習的東西較多,實際上你只要安裝軟體,問題就都可以解決了,這個軟體我自己也用過,很好用,發一張操作界面讓你KK吧,打了好多字噢,希望對你有所幫助,再說一下FTP上傳和下載都不要錢!

6. 如何使用FTP

FTP(File Transfer Protocol)是 Internet 上用來傳送文件的協議(文件傳輸協議)。它是為了我們能夠在 Internet 上互相傳送文件而制定的的文件傳送標准,規定了 Internet 上文件如何傳送。也就是說,通過 FTP 協議,我們就可以跟 Internet 上的 FTP 伺服器進行文件的上傳(Upload)或下載(Download)等動作。

和其他 Internet 應用一樣,FTP 也是依賴於客戶程序/伺服器關系的概念。在 Internet 上有一些網站,它們依照 FTP 協議提供服務,讓網友們進行文件的存取,這些網站就是 FTP 伺服器。網上的用戶要連上 FTP 伺服器,就要用到 FPT 的客戶端軟體,通常 Windows 都有「ftp」命令,這實際就是一個命令行的 FTP 客戶程序,另外常用的 FTP 客戶程序還有 CuteFTP、Ws_FTP、FTP Explorer等。

要連上 FTP 伺服器(即「登陸」),必須要有該 FTP 伺服器的帳號。如果是該伺服器主機的注冊客戶,你將會有一個 FTP 登陸帳號和密碼,就憑這個帳號密碼連上該伺服器。但 Internet 上有很大一部分 FTP 伺服器被稱為「匿名」(Anonymous)FTP 伺服器。這類伺服器的目的是向公眾提供文件拷貝服務,因此,不要求用戶事先在該伺服器進行登記注冊。

Anonymous(匿名文件傳輸)能夠使用戶與遠程主機建立連接並以匿名身份從遠程主機上拷貝文件,而不必是該遠程主機的注冊用戶。用戶使用特殊的用戶名「anonymous」和「guest」就可有限制地訪問遠程主機上公開的文件。現在許多系統要求用戶將Emai1地址作為口令,以便更好地對訪問進行跟綜。出於安全的目的,大部分匿名FTP主機一般只允許遠程用戶下載(download)文件,而不允許上載(upload)文件。也就是說,用戶只能從匿名FTP主機拷貝需要的文件而不能把文件拷貝到匿名FTP主機。另外,匿名FTP主機還採用了其他一些保護措施以保護自己的文件不至於被用戶修改和刪除,並防止計算機病毒的侵入。在具有圖形用戶界面的 WorldWild Web環境於1995年開始普及以前,匿名FTP一直是Internet上獲取信息資源的最主要方式,在Internet成千上萬的匿名PTP主機中存儲著無以計數的文件,這些文件包含了各種各樣的信息,數據和軟體。 人們只要知道特定信息資源的主機地址, 就可以用匿名FTP登錄獲取所需的信息資料。雖然目前使用WWW環境已取代匿名FTP成為最主要的信息查詢方式,但是匿名FTP仍是 Internet上傳輸分發軟體的一種基本方法。

全有網推薦兩款比較實用方便的FTP工具:Cutftp【CuteFTP Pro V7.1 Build 06.07.2005.1 官方簡體中文包下載地址:http://www4.skycn.com/soft/15789.html】FlashFtp【FlashFXP V3.2.0.1080 漢化版(烈火版)下載地址:http://www4.skycn.com/soft/22415.html】

7. FTP怎麼用

什麼是FTP呢?FTP 是 TCP/IP 協議組中的協議之一,是英文File Transfer Protocol的縮寫。該協議是Internet文件傳送的基礎,它由一系列規格說明文檔組成,目標是提高文件的共享性,提供非直接使用遠程計算機,使存儲介質對用戶透明和可靠高效地傳送數據。簡單的說,FTP就是完成兩台計算機之間的拷貝,從遠程計算機拷貝文件至自己的計算機上,稱之為「下載(download)」文件。若將文件從自己計算機中拷貝至遠程計算機上,則稱之為「上載(upload)」文件。在TCP/IP協議中,FTP標准命令TCP埠號為21,Port方式數據埠為20。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無法和內部網路的客戶端建立一個新的連接,造成無法工作。

8. FTP怎麼用

輸入 你的伺服器定義 的固定IP 用戶名,密碼。 連接,如果連通了,就會有兩邊的窗口,一邊是本地的文件 ,一邊是伺服器上的文件 ,把本地的文件,拖放到伺服器上就行了

9. FTP怎麼用啊

FTP,是上傳和下摘協議,有FTP軟體(免費的),申請還一個空間,他會給你一個FTP的地址,FTP伺服器就是一段IP,用戶,是你的用戶名,FTP密碼是你登陸FTP的密碼,可以在你的空間管理看到,空間申請好了以後,你要把網站的文件上傳到空間,需要FTP工具,(也可以用WEB方式上傳,只是速度很慢),FTP工具,可以登陸所有的網站空間,只要有FTP伺服器的TP和你的用戶名,和密碼,就可以管理你網站上的數據,

10. ftp怎麼用

FTP基礎知識
您是否正准備搭建自己的FTP網站?您知道FTP協議的工作機制嗎?您知道什麼是PORT方式?什麼是PASV方式嗎?如果您不知道,或沒有完全掌握,請您坐下來,花一點點時間,細心讀完這篇文章。所謂磨刀不誤砍柴功,掌握這些基礎知識,會令您事半功倍。否則,很可能折騰幾天,最後一事無成。

FTP基礎知識

FTP是File Transfer Protocol(文件傳輸協議)的縮寫,用來在兩台計算機之間互相傳送文件。相比於HTTP,FTP協議要復雜得多。復雜的原因,是因為FTP協議要用到兩個TCP連接,一個是命令鏈路,用來在FTP客戶端與伺服器之間傳遞命令;另一個是數據鏈路,用來上傳或下載數據。

FTP協議有兩種工作方式:PORT方式和PASV方式,中文意思為主動式和被動式。
PORT(主動)方式的連接過程是:客戶端向伺服器的FTP埠(默認是21)發送連接請求,伺服器接受連接,建立一條命令鏈路。

當需要傳送數據時,客戶端在命令鏈路上用 PORT命令告訴伺服器:「我打開了****埠,你過來連接我」。於是伺服器從20埠向客戶端的****埠發送連接請求,建立一條數據鏈路來傳送數據。

PASV(被動)方式的連接過程是:客戶端向伺服器的FTP埠(默認是21)發送連接請求,伺服器接受連接,建立一條命令鏈路。

當需要傳送數據時,伺服器在命令鏈路上用 PASV命令告訴客戶端:「我打開了****埠,你過來連接我」。於是客戶端向伺服器的****埠發送連接請求,建立一條數據鏈路來傳送數據。
從上面可以看出,兩種方式的命令鏈路連接方法是一樣的,而數據鏈路的建立方法就完全不同。而FTP的復雜性就在於此。

FTP伺服器端的注意事項

一、FTP伺服器是公網IP,用公網動態域名;或是內網IP,用內網專業版TrueHost

1、伺服器如果安裝了防火牆,請記住要在防火牆上打開FTP埠(默認是21)。

2、所有FTP伺服器軟體都支持PORT方式。至於PASV方式,大部分FTP伺服器軟體都支持。支持PASV方式的FTP伺服器軟體,也可以設置為只工作在PORT方式上。

3、為了PASV方式能正常工作,需要在FTP伺服器軟體上為PASV方式指定可用的埠范圍(設置方法)。此外,還要在伺服器的防火牆上打開這些埠。當客戶端以PASV方式連接伺服器的時候,伺服器就會在這個埠范圍里挑選一個埠出來,給客戶端連接。

二、FTP伺服器是內網IP,用內網動態域名標准版cm*natpro*y

這種情況下,FTP伺服器不需要做特殊設置,只要支持PASV方式就可以了。大部分FTP伺服器軟體都支持PASV方式。

FTP客戶端的注意事項

請注意:選擇用PASV方式還是PORT方式登錄FTP伺服器,選擇權在FTP客戶端,而不是在FTP伺服器。

一、客戶端只有內網IP,沒有公網IP

從上面的FTP基礎知識可知,如果用PORT方式,因為客戶端沒有公網IP,FTP將無法連接客戶端建立數據鏈路。因此,在這種情況下,客戶端必須要用PASV方式,才能連接FTP伺服器。大部分FTP站長發現自己的伺服器有人能登錄上,有人登錄不上,典型的錯誤原因就是因為客戶端沒有公網IP,但用了IE作為FTP客戶端來登錄(IE默認使用PORT方式)。

作為FTP站長,有必要掌握FTP的基礎知識,然後指導您的朋友如何正確登錄您的FTP。

二、客戶端有公網IP,但安裝了防火牆

如果用PASV方式登錄FTP伺服器,因為建立數據鏈路的時候,是由客戶端向伺服器發送連接請求,沒有問題。反過來,如果用PORT方式登錄FTP伺服器,因為建立數據鏈路的時候,是由伺服器向客戶端發送連接請求,此時連接請求會被防火牆攔截。如果要用PORT方式登錄FTP伺服器,請在防火牆上打開 1024以上的高端埠。

三、連接用內網標准版cm*natpro*y搭建的FTP服務,必須要用PASV方式。連接任何公網FTP伺服器、或用內網專業版TrueHost搭建的FTP伺服器,PORT方式和PASV方式都可以使用。

當然,使用PORT方式的時候,還要滿足上面的兩個條件。

四、常見的FTP客戶端軟體PORT方式與PASV方式的切換方法。

大部分FTP客戶端默認使用PASV方式。IE默認使用PORT方式。

在大部分FTP客戶端的設置里,常見到的字眼都是「PASV」或「被動模式」,極少見到「PORT」或「主動模式」等字眼。因為FTP的登錄方式只有兩種:PORT和PASV,取消PASV方式,就意味著使用PORT方式。

IE:

工具 -> Internet選項 -> 高級 -> 「使用被動FTP」(需要IE6.0以上才支持)。

CuteFTP:

Edit -> Setting -> Connection -> Firewall -> 「PASV Mode」

File -> Site Manager,在左邊選中站點 -> Edit -> 「Use PASV mode」
FlashGet:
工具 -> 選項 -> 代理伺服器 -> 直接連接 -> 編輯 -> 「PASV模式」

FlashFTP:

選項 -> 參數選擇 -> 代理/防火牆/標識 -> 「使用被動模式」

站點管理 -> 對應站點 -> 選項 -> 「使用被動模式」

快速連接 -> 切換 -> 「使用被動模式」

LeechFTP:

Option -> Firewall -> Do not Use

五、請盡量不要用IE作為FTP客戶端

IE只是個很粗糙的FTP客戶端工具。首先,IE6.0以下的版本不支持PASV方式;其次,IE在登錄FTP的時候,看不到登錄信息。在登錄出錯的時候,無法找到錯誤的原因。在測試自己的FTP網站的時候,強烈建議不要使用IE。

FTP建站的詳細配置過程

請參考這個網頁的說明來配置:

使用Serv-U建立FTP網站

高級話題

一、為什麼沒有公網IP,也能使用PORT方式登錄FTP?

NAT 網關的工作方式是在TCP/IP數據包的包頭里找區域網的源地址和源埠,替換成網關的地址和埠。對數據包里的內容,是不會改變的。而使用PORT方式登錄FTP的時候,IP地址與埠信息是在數據包裡面的,而不是在包頭。因此,沒有公網IP,使用PORT方式是無法從internet上的ftp伺服器下載數據的。

但是,極少數的NAT網關也支持PORT方式。這些NAT網關連數據包裡面的內容都掃描,掃描到 PORT指令後會替換PORT方式的IP和埠。在這種NAT網關下面,用PORT方式就沒問題了。不過,這些網關也只掃描21埠的數據包,如果FTP 伺服器不是用默認的21埠,也無法使用PORT方式。

二、內網可以用PORT訪問其他FTP,為什麼不能用PORT訪問自己的TrueHost FTP?

下面要討論的問題,只是為了說明一些原理,是不影響實際使用的。如果您沒有興趣深究這些原理,不必花時間看。

內網用戶通過支持PORT方式的NAT網關,訪問自己本機利用TrueHost建立的FTP伺服器,FTP命令鏈路的建立過程如下:

FTP客戶端

10.10.0.1
埠*** <==> ISP NAT網關
61.144.1.2
埠**** <==> TH伺服器
*.*.*.*
埠21 <==> TH客戶端 <==> 用戶FTP伺服器
10.10.0.1
埠21

FTP客戶端通過ISP的NAT網關、科邁TrueHost伺服器、TrueHost客戶端,連接用戶本機的FTP伺服器的21埠。

當需要下載數據的時候,FTP客戶端通過這條命令鏈路,向FTP伺服器發送PORT命令。假設命令為:

PORT 10,10,0,1,30,4 (即IP=10.10.0.1 埠=30*256+4=7684)
當命令通過ISP的NAT網關的時候,NAT網關判斷目的埠是21,並且是PORT命令,於是,修改命令里的IP和埠,替換為自己的IP和埠,比如:
PORT 61,144,1,2,50,6 (即IP=61.144.1.2 埠=50*256+6=12806)
用戶的FTP伺服器最終收到的是上面這個PORT命令。於是,FTP伺服器向這個IP和埠發送連接請求,建立數據鏈路。

用戶FTP伺服器

10.10.0.1
埠20 <==> ISP NAT網關
61.144.1.2
埠12806 <==> FTP客戶端
10.10.0.1
埠7684

但是,因為NAT網關的公網IP只能接收外來的連接請求。就是說,61.144.1.2:12806隻能接收其他公網IP的連接請求,對於從NAT內部(10.10.0.1:20)發起的連接請求,是無法建立連接的。為什麼?原因很簡單,因為內網IP要訪問外網,必須要通過NAT建立映射。於是FTP數據鏈路無法建立。於是,用戶無法在自己的機器上通過21埠訪問自己的TrueHost FTP。

我們再來看看,如果FTP埠不是21,比如是22,會發生什麼情況呢?在FTP客戶端發送PORT命令的時候,NAT網關檢測到目標埠是22,因為支持PORT的 NAT網關只監視目的埠是21的數據包,發現目的埠是22的數據包,不做任何處理,完全放行。於是FTP伺服器收到的PORT命令依然是PORT 10,10,0,1,30,4。於是FTP伺服器向這個IP和埠發送連接請求。

用戶FTP伺服器

10.10.0.1
埠20 <==> FTP客戶端
10.10.0.1
埠7684

這種情況下命令鏈路就可以建立起來了。而且是等於本機連接本機,速度飛快。
綜上所述,內網用戶無法用PORT方式通過21埠訪問自己的TrueHost FTP伺服器。如果FTP埠不是21,則可以訪問,而且實際上是本機連接本機。

上面的文字,僅僅是為了說明一些原理,不影響實際使用。如果本機訪問本機,還要通過FTP的話,就有畫蛇添足之嫌了。