2015-06-04

Ubuntu 免安裝快速用 HTTP 分享檔案和資訊

如果你在一台 Ubuntu Server 上,不能安裝軟體或是不想再安裝軟體來設定,然後,要把檔案或資訊分享出去,讓別人可連上來取檔况看資料的話,要怎麼做才可以快速達成,這是阿舍之前一直想去找,但是,因為,阿舍覺得好像沒有很實用,所以,就沒有很積極的去找哩 ! 結果,前幾天在查東西的時候,有看到有人說到用 python 的 SimpleHTTPServer 模組,不用寫程式就可以做的到阿舍上面提到的需求,因此,阿舍就找了個時間試了一下,嗯 ... 果然是滿方便的,操作方法也很簡單哩 !


Python 程式有一個 -m 選項,可以直接把模組拿來當做 Script 執行,所以,只要使用 -m 選項再加上 SimpleHTTPServer 就可以馬上啟動一個 HTTP Server,而這個 HTTP Server 預設會列出目前所在資料夾的檔案清單,因此,如果要分享檔案的話,就可以建一個資料夾,然後,把要分享的檔案放進去,之後,再進到那個資料夾來啟用 SimpleHTTPServer 模,這樣,就可以讓別人透過網頁來存取這個資料夾裡的檔案哩 ! 下面就是操作的步驟 ...

# 建立資料夾
$ mkdir shared

# 將要分享的檔案放到這個新建的資料夾
$ cp *.sh shared

# 啟動 SimpleHTTPServer 模組,預設使用 8000 通訊埠
$ cd shared
$ python -m SimpleHTTPServer

# 啟動 SimpleHTTPServer 模組並指定通訊埠號
$ python -m SimpleHTTPServer 8888

# 開啟網頁
http://localhost:8000


更新:
Python 3 不再使用 SimpleHTTPServer 這個模組名稱,而是要改用 http.server,所以,以阿舍上面的例子來說,就要改成像下面這樣:

$ python -m http.server



$ python -m http.server 8888



阿舍上面提到的這個方法適合用來應急或做測試 HTTP 服務用的,並不適合拿來應用在對外或當正式服務的 HTTP Server 使用,如果要安全一點的話,還是安裝個 Apache 或 Nginx 來用會比較好哩 !

開啟網頁就會出現檔案清單

另外,Perl 和 Python 一樣,都是 Ubuntu 預設會安裝的,然後,Perl 也可以用一行指令就來啟動一個 HTTP Server,不過,相對於 Python 來說,阿舍覺得 Perl 的指令太長了,所以,阿舍就沒興趣看,也就不介紹了 ... 雖然說,Perl 曾是阿舍最喜歡的程式語言 ...




推薦閱讀


有疑問? 問題還是沒解決嗎? 歡迎下方留言提問和討論 😁

沒有留言 :

張貼留言

歡迎留言提問和討論 .... 😁