十行代碼實現一個簡單的靜態Web服務器

ugmp1343 8年前發布 | 16K 次閱讀 Web服務器 Flask Python開發

這段時間新的項目,大部分都是動態的HTML5搭建的,需要在手機端測試適配問題,因此需要在本地搭建一個Web服務器,用于手機訪問,但是可憐的網絡下載100多M的XAMPP始終下不了,忽然靈機一動,以前學的Flask不是自帶一個測試用的Web服務器,剛好可以用來做一個簡單的靜態Web服務器。

首先需要安裝Python環境,可以 官網 去下載,然后next,next安裝完成。

最新的Mac OS Sierra系統安裝的Python沒有自帶 pip ,需要使用命令 sudo easy_install pip 手動安裝 pip 。使用 sudo pip install Flask 安裝好Flask框架,因為只是用來做一個簡單的Web服務器,所以暫時不考慮使用 virtualenv 開發環境。

創建項目目錄如下:

WebServer
├── static
├── WebServer.py

static 目錄就是我們需要存放靜態HTML以及資源文件, WebServer.py 就是我們開啟服務器的文件, 代碼如下:

from flask import Flask

app = Flask(__name__)

@app.route('/<path:path>')
def hello_world(path):
    return app.send_static_file(path)

if __name__ == '__main__':
    app.run(host='0.0.0.0', port='5000')

host='0.0.0.0' 表示Flask可以進行外網訪問, port='5000' 為訪問端口為5000,將你需要訪問的靜態文件放入到 static 目錄中,然后在在命令行中用cd切換到 WebServer.py 的目錄下,運行命令 python WebServer.py 啟動服務器,然后可以在瀏覽器中輸入:

http://ip地址:port端口/靜態文件Path

比如 http://192.168.1.104:5000/web/index.html ,就可以在局域內進行訪問了。

不過每次都復制文件到 static 目錄中是比較麻煩的事情,我們可以使用 ln 命令創建Web項目文件夾的軟鏈接到 static 目錄中,命令為 ln -s 項目文件夾 static目錄 。 建立軟鏈接后,只需要命令啟動服務器,就可以在瀏覽器中輸入地址查看效果。

 

來自:http://www.jianshu.com/p/d163d6f98803

 

 本文由用戶 ugmp1343 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!