歡迎光臨
每天分享高質量文章

如何在 Linux 中快速地透過 HTTP 提供檔案訪問服務 | Linux 中國

如果你想知道如何在類 Unix 作業系統中透過 HTTP 輕鬆快速地提供檔案和檔案夾的訪問服務,以下方法之一肯定會有所幫助。
— Sk

 

 

 

致謝
編譯自 | 
https://www.ostechnix.com/how-to-quickly-serve-files-and-folders-over-http-in-linux/
 
 作者 | Sk
 譯者 | geekpi ???共計翻譯:822.5 篇 貢獻時間:1840 天

如今,我有很多方法來透過 Web 瀏覽器為區域網中的其他系統提供單個檔案或整個目錄的訪問。我在我的 Ubuntu 測試機上測試了這些方法,它們如下麵描述的那樣執行正常。如果你想知道如何在類 Unix 作業系統中透過 HTTP 輕鬆快速地提供檔案和檔案夾的訪問服務,以下方法之一肯定會有所幫助。

在 Linux 中透過 HTTP 訪問檔案和檔案夾

免責宣告:此處給出的所有方法適用於安全的區域網。由於這些方法沒有任何安全機制,因此不建議在生產環境中使用它們。你註意了!

方法 1 – 使用 simpleHTTPserver(Python)

我們寫了一篇簡要的指南來設定一個簡單的 http 伺服器,以便在以下連結中即時共享檔案和目錄。如果你有一個安裝了 Python 的系統,這個方法非常方便。

◈ 如何使用 simpleHTTPserver 設定一個簡單的檔案伺服器[1]

方法 2 – 使用 Quickserve(Python)

此方法針對 Arch Linux 及其衍生版。有關詳細資訊,請檢視下麵的連結。

◈ 如何在 Arch Linux 中即時共享檔案和檔案夾[2]

方法 3 – 使用 Ruby

在此方法中,我們使用 Ruby 在類 Unix 系統中透過 HTTP 提供檔案和檔案夾訪問。按照以下連結中的說明安裝 Ruby 和 Rails。

◈ 在 CentOS 和 Ubuntu 中安裝 Ruby on Rails[3]

安裝 Ruby 後,進入要透過網路共享的目錄,例如 ostechnix:

  1. $ cd ostechnix

並執行以下命令:

  1. $ ruby -run -ehttpd . -p8000
  2. [2018-08-10 16:02:55] INFO WEBrick 1.4.2
  3. [2018-08-10 16:02:55] INFO ruby 2.5.1 (2018-03-29) [x86_64-linux]
  4. [2018-08-10 16:02:55] INFO WEBrick::HTTPServer#start: pid=5859 port=8000

確保在路由器或防火牆中開啟埠 8000。如果該埠已被其他一些服務使用,那麼請使用不同的埠。

現在你可以使用 URL 從任何遠端系統訪問此檔案夾的內容 – http:// :8000

要停止共享,請按 CTRL+C

方法 4 – 使用 Http-server(NodeJS)

Http-server 是一個用 NodeJS 編寫的簡單的可用於生產環境的命令列 http 伺服器。它不需要配置,可用於透過 Web 瀏覽器即時共享檔案和目錄。

按如下所述安裝 NodeJS。

◈ 如何在 Linux 上安裝 NodeJS[5]

安裝 NodeJS 後,執行以下命令安裝 http-server。

  1. $ npm install -g http-server

現在進入任何目錄並透過 HTTP 共享其內容,如下所示。

  1. $ cd ostechnix
  2. $ http-server -p 8000
  3. Starting up http-server, serving ./
  4. Available on:
  5. http://127.0.0.1:8000
  6. http://192.168.225.24:8000
  7. http://192.168.225.20:8000
  8. Hit CTRL-C to stop the server

現在你可以使用 URL 從任何遠端系統訪問此檔案夾的內容 – http:// :8000

要停止共享,請按 CTRL+C

方法 5 – 使用 Miniserve(Rust)

Miniserve[6] 是另一個命令列程式,它允許你透過 HTTP 快速訪問檔案。它是一個非常快速、易於使用的跨平臺程式,它用 Rust 程式語言編寫。與上面的程式/方法不同,它提供身份驗證支援,因此你可以為共享設定使用者名稱和密碼。

按下麵的連結在 Linux 系統中安裝 Rust。

◈ 在 Linux 上安裝 Rust 程式語言[7]

安裝 Rust 後,執行以下命令安裝 miniserve:

  1. $ cargo install miniserve

或者,你可以在其釋出頁[8]下載二進位制檔案並使其可執行。

  1. $ chmod +x miniserve-linux

然後,你可以使用命令執行它(假設 miniserve 二進位制檔案下載到當前的工作目錄中):

  1. $ ./miniserve-linux <path-to-share>

用法

要提供目錄訪問:

  1. $ miniserve <path-to-directory>

示例:

  1. $ miniserve /home/sk/ostechnix/
  2. miniserve v0.2.0
  3. Serving path /home/sk/ostechnix at http://[::]:8080, http://localhost:8080
  4. Quit by pressing CTRL-C

現在,你可以在本地系統使用 URL – http://localhost:8080 訪問共享,或者在遠端系統使用 URL – http://:8080 訪問。

要提供單個檔案訪問:

  1. $ miniserve <path-to-file>

示例:

  1. $ miniserve ostechnix/file.txt

帶使用者名稱和密碼提供檔案/檔案夾訪問:

  1. $ miniserve --auth joe:123 <path-to-share>

系結到多個介面:

  1. $ miniserve -i 192.168.225.1 -i 10.10.0.1 -i ::1 -- <path-to-share>

如你所見,我只給出了 5 種方法。但是,本指南末尾附帶的連結中還提供了幾種方法。也去測試一下它們。此外,收藏並時不時重新訪問它來檢查將來是否有新的方法。

今天就是這些。希望這篇文章有用。還有更多的好東西。敬請期待!

乾杯!

資源

◈ 單行靜態 http 伺服器大全[9]

via: https://www.ostechnix.com/how-to-quickly-serve-files-and-folders-over-http-in-linux/

作者:SK[11] 選題:lujun9972 譯者:geekpi 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出

 

    贊(0)

    分享創造快樂