FileZilla是免費且開放原始碼的FTP軟體,FileZilla分為用來架設FTP Server的Server版本,以及用來連接到其他FTP Server的Client版本。因為大多數人並不會用FileZilla來自行架設FTP Server,所以在本篇文章中,將只會介紹FileZilla Client。



下載與安裝FileZilla

來到FileZilla的官方網站,可以找到FileZilla Client的下載點。

如果是使用基於Debian的Linux作業系統,更可以直接使用一行指令來下載與安裝:

sudo apt install filezilla

安裝好FileZilla之後,就可以開起來使用了。

filezilla

FileZilla 使用方法

連線到FTP站台

FileZilla提供站台管理員,除了可以替FTP站台命名外,還提供了更多登入之外的設定。

filezilla

FTP登入必須提供的資訊有主機名稱、使用者和密碼(一般登入)。FTP的連接埠(port)預設為21,如果有特別改用別的連接埠再自行填入即可。

filezilla

其他額外的部份也可以設定一下,會讓FTP站台變得更容易操作。像是進階設定頁面中的本地目錄遠端目錄,若本地目錄和遠端目錄結構相同,可以考慮開啟同步瀏覽選項。另外,也可以設定字碼集頁面中的編碼方式,如果沒有手動指定編碼,檔案名稱可能會變成亂碼。

filezilla

filezilla

設定好之後,可以登進FTP站台中看看啦!

filezilla

如果發現FileZilla並未將所有伺服器上的檔案列出,可能是因為檔案為隱藏檔的關係,可以在功能表選單中的伺服器勾選強制顯示隱藏檔案,來顯示隱藏檔。

filezilla

FileZilla 設定

FileZilla的預設設定值可能無法符合所有的環境,如果能稍微調整一下會讓FileZilla更好用喔!

逾時時間

連線到FTP進行檔案的上傳/下載時可能會因連線不穩,或是檔案大小過大而導致傳輸時間過久,FileZilla預設的逾時時間為20秒,實在是過於狹窄。筆者通常會將這個選項設為0,也就是停用逾時判斷。

filezilla

最大同時傳輸數目

FileZilla預設的最大同時傳輸數目只有2個,也就是傳輸的檔案在同一時間只能有兩個,其他的檔案只能先排隊等空位,對於現在越來越大的網路頻寬,這樣的設定明顯不合適。筆者通常會將這個選項設為5 ~ 7

filezilla

傳輸模式(主動模式/被動模式)

筆者曾經在架設公司網站時使用過PChome的Windows伺服器,因為網站架構的關係,所以有很多零碎的小檔案,但是這個伺服器提供的FTP Server如果放置很多的檔案,會有一個奇怪的現象。

一開始,會發現到這個奇怪的問題,是因為同一個目錄下的檔案數量(不含資料夾數量)已經到達71個,內容如下:
資料夾A
資料夾B
資料夾C
資料夾D
資料夾E
資料夾F
檔案1
檔案2
檔案3
.
.
檔案71
以下資料夾及檔案名稱均以ABC、123來代替。

「檔案71」使用FTP軟體上傳並未發生問題,但是上傳後,FTP軟體要重新取得該目錄的檔案清單(目錄列表)時,卻發生卡死的現象,卡死時,FileZilla上最後的記錄訊息是226 transfer complete,等了很久都沒出現成功取得目錄列表的訊息,而且此時FileZilla的遠端站台的頁框是卡死的現象,什麼動作都無法進行,所以只能重新登入連線。

這並非是FileZilla特有的問題,用Widnwos檔案總管連線到此FTP目錄也是一樣的狀況,用別台電腦來連也是相同的情況,可以排除是個人電腦和網路的問題。使用伺服器主機提供的Plesk CP後台還是可以進到該目錄進行檔案管理的動作,但FTP一直不行。

有嘗試過將任何一個檔案刪除,讓檔案數量回到70個,此時FTP軟體皆可取得該目錄的清單。所以筆者一開始以為,是FTP伺服器有限制檔案數量上限為70(十分少,以前用過的國外免費虛擬主機1000個也沒問題。租過台灣其他家的主機,也沒有這種嚴苛的限制),於是筆者就向PChome虛擬主機的客服詢問能否放寬上限,但他們的回應是:「伺服器的限制,無法提供客製化。」

正當筆者放棄要再度更改網站架構,將檔案分散到不同的目錄時,忽然發現到一個很奇特的現象!

若在該目錄中,再新增一個資料夾G,裡面沒放東西也可以。新增資料夾G後,該目錄的檔案數量就算超過300個,FTP軟體依然能取得該目錄的檔案清單。但移除資料夾G後,FTP軟體又會卡死,不過再用CP後臺去增加資料夾G,FTP軟體又能用,屢試不爽。

因為第一次碰到這種神奇的現象,筆者又多玩了一下。如果把其他的資料夾改名稱,像是把資料夾C改成資料夾Q,即使資料夾G存在,FTP軟體又無法取得該目錄了。若是把資料夾G改名稱為資料夾H,也是同樣的情況,FTP又不能用了。

結果,後來把傳輸模式改為主動模式,就沒有這個問題了。

filezilla

經過幾年一直到現在,筆者還是不知道為什麼將傳輸模式改為主動模式就能夠解決這個問題,一般都是使用被動模式問題會比較少(主動模式的客戶端會需要一個公開的IP來讓伺服器端來連線)。所以如果各位也有遇到奇怪的FTP問題,不妨將FTP的傳輸模式調整看看,說不定莫名其妙就解決了!