如何分分鐘搭建起靜態文件服務器?
譯文【51CTO.com快譯】可曾想通過網絡共享你的文件或項目,卻不知道該怎么辦?別擔心!有一款名為“serve”的簡單實用程序,可通過網絡即時提供你的文件。這個簡單的實用程序可立即將你的系統變成靜態文件服務器,讓你通過網絡共享文件。
你可以從任何設備訪問這些文件,不用考慮它們用什么操作系統。你只需要一款Web瀏覽器。該實用程序還可用于服務靜態網站。它以前名叫“list”和“micro-list”,但現在名稱換成了“serve”,這個名稱適合得多,明確表明了該實用程序的用途。
想安裝“server”,你要先安裝NodeJS和NPM。請參考下列鏈接,以便在Linux系統中安裝NodeJS和NPM。
一旦NodeJS和NPM安裝完畢,運行下列命令安裝“serve”。
$ npm install –g serve
好了!現在可以提供文件或文件夾了。
使用“serve”的典型語法是:
$ serve [options] <path-to-files-or-folders>
提供特定的文件或文件夾
比如說,不妨共享Documents目錄的內容。為此運行:
$ serve Documents/
示例輸出如下:
正如你從上面屏幕截圖中看到,特定目錄的內容已經由兩個URL通過網絡來提供。
想從本地系統訪問內容,你只需打開Web瀏覽器,并導航到http://localhost:5000/ URL。
Serve實用程序以簡單的布局顯示了特定目錄的內容。你可以下載(鼠標右擊文件,選擇“保存鏈接為……”),也可以只在瀏覽器中查看。
如果你想在瀏覽器中自動打開本地地址,請使用-o標志。
$ serve -o Documents/
一旦你運行了上述命令,Serve實用程序將自動打開Web瀏覽器,并顯示共享項的內容。
同樣,想通過網絡從遠程系統訪問共享目錄,請在瀏覽器的地址欄中輸入http://192.168.43.192:5000。把192.168.43.192換成你系統的IP地址。
通過不同的端口提供內容
你可能已注意到,默認情況下,Server實用程序使用端口5000。所以,確保你的防火墻或路由器允許端口5000。如果該端口因某種原因被封阻,你可以使用-p標志,使用不同的端口來提供內容。
$ serve -p 1234 Documents/
上述命令將通過端口1234提供Documents目錄的內容。
想提供文件而不是提供文件夾,只要像下面這樣提供完整路徑。
$ serve Documents/Papers/notes.txt
只要知道路徑,網絡上的任何用戶都可以訪問共享目錄的內容。
提供整個$HOME目錄
打開終端,并輸入:
$ serve
這將通過網絡共享整個$ HOME目錄的內容。
想停止共享,請按CTRL + C組合鍵。
提供選擇性的文件或文件夾
你可能不想共享所有的文件或目錄,而是只想共享目錄中的幾個文件。你可以通過使用-i標志排除文件或目錄來完成此操作。
$ serve -i Downloads/
上述命令將提供除Downloads目錄以外的整個文件系統。
僅提供本地主機上的內容
有時,你只想提供本地系統上的內容,而不是整個網絡上的內容。為此,可使用-l標志,如下所示:
$ serve -l Documents/
該命令將僅提供本地主機上的Documents目錄。
你在共享服務器上工作時,這很有用。系統中的所有用戶都可以訪問共享內容,但遠程用戶無法訪問。
使用SSL提供內容
由于我們通過本地網絡提供內容,因此不需要使用SSL。然而,Serve實用程序能夠使用-ssl標志來共享內容。
$ serve --ssl Documents/
想通過Web瀏覽器來訪問共享內容,可使用“https://localhost:5000”或“https://ip:5000”。
在驗證身份的情況下提供內容
在上述所有例子中,我們都是在沒有驗證身份的情況下提供內容。因此,網絡上的任何人都可以在沒有驗證身份的情況下訪問內容。你可能覺得,應該使用用戶名和密碼才能訪問某些內容。
為此,使用:
$ SERVE_USER=ostechnix SERVE_PASSWORD=123456 serve --auth
現在用戶需要輸入用戶名(即本例中的ostechnix)和密碼(123456)來訪問這些共享內容。
Serve實用程序還有其他一些功能,比如禁止Gzip壓縮,設置* CORS頭以便允許來自任何來源的請求,以及防止地址自動拷貝到剪貼板等。你可以運行下列命令,閱讀完整的幫助部分:
$ serve help
好了,本文要介紹的就是這些。希望本文有所幫助。
資源:
原文標題:How To Setup Static File Server Instantly,作者:SK
【51CTO譯稿,合作站點轉載請注明原文譯者和出處為51CTO.com】



























