iT邦幫忙

2024 iThome 鐵人賽

DAY 15
1

HTTP、FTP和SMTP這三個協議扮演著不可或缺的角色。它們分別管理著網頁內容的交付、文件的傳輸以及電子郵件的發送。上一篇介紹了HTTP,這篇就是FTP啦!

檔案傳輸協議(FTP)是一種用於在客戶端和服務器之間傳輸文件的標準協議。

工作原理
FTP是一個應用層協議,專門設計來管理文件在客戶端和服務器之間的傳輸。它通過建立兩個獨立的連接來實現這一功能:

  1. 控制連接:是FTP運作的核心,負責在客戶端和服務器之間傳遞命令和回應。當客戶端啟動FTP會話時,首先建立這個控制連接。所有的FTP命令(如登入、改變目錄、列出文件等)都通過這個連接傳輸。

  2. 數據連接:這個連接專門用來傳輸實際的文件數據。當客戶端發出一個文件傳輸命令(如上傳或下載文件)時,服務器會根據命令建立數據連接,將數據傳送到客戶端或從客戶端接收數據。數據連接可以在控制連接建立後的任何時刻根據需要進行開啟和關閉。

特點

  1. 兩種運作模式:
  • 主動模式(Active Mode):客戶端通過控制連接告訴服務器可以使用的數據端口,然後服務器主動連接到客戶端的這個端口以建立數據連接。這種模式在某些情況下可能會被防火牆阻擋,因為它涉及服務器對客戶端的主動連接。
  • 被動模式(Passive Mode):服務器不再主動連接客戶端,而是打開一個隨機的高位端口,並告知客戶端來連接這個端口以建立數據連接。這種模式對於在防火牆後運行的客戶端更為友好,因為所有連接都是由客戶端主動發起的。
  1. 匿名訪問:FTP支持匿名訪問,允許用戶在不提供身份驗證信息(如用戶名和密碼)的情況下訪問服務器上的公開文件。這種模式通常用於公開的文件共享站點,用戶只需輸入“anonymous”作為用戶名,並隨意輸入一個電子郵件地址作為密碼,就可以訪問文件。
  2. 文件管理功能:除了文件傳輸,FTP還支持一些基本的文件管理功能,如創建和刪除目錄、刪除文件、更改文件權限等。這使得FTP不僅僅是一個傳輸協議,還是一個基本的遠程文件系統管理工具。

假設你是一名開發人員,需要將你本地電腦上的一個網站項目上傳到遠程服務器。以下是使用FTP的過程:

  1. 建立控制連接:你打開一個FTP客戶端(例如FileZilla),並輸入服務器的IP地址、用戶名和密碼。客戶端通過控制連接與服務器進行連接,並完成登錄。
  2. 選擇運作模式:假設你的公司網路有嚴格的防火牆規則,你選擇了被動模式。FTP客戶端發送PASV命令,服務器回應一個可用的高位端口,客戶端通過這個端口建立數據連接。
  3. 文件傳輸:你選擇本地文件夾中的項目文件,並點擊“上傳”。FTP客戶端通過已建立的數據連接將這些文件傳輸到服務器指定的目錄中。
  4. 完成傳輸:當所有文件都上傳完成後,FTP客戶端會關閉數據連接,並保持控制連接開啟,等待你發出其他指令或選擇斷開連接。
  5. 匿名訪問:如果你的服務器設置了匿名訪問權限,其他用戶可以通過輸入“anonymous”作為用戶名,並訪問你公開的網站文件,而無需輸入密碼。

上一篇
Day14 | 超文本傳輸協議(HTTP)
下一篇
Day16 | 簡單郵件傳輸協議(SMTP)
系列文
每天都在上網,但你知道網路是怎麼運作的嗎?30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言