十行代碼實現一個簡單的靜態Web服務器
這段時間新的項目,大部分都是動態的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