Flask + Apache 架在windows上

Yi-Ting
5 min readNov 19, 2018

--

Flask是 python 的一個微型網頁框架,有興趣的人可以google看看

這篇主要是給自己記錄用,因為實驗室計畫的關係,都要在google cloud platform 用 Apache 架 server,怕之後會忘記XD

剛開啟gcp的windows版會遇到一些權限問題,可以參考這篇解決(很感謝之前找到這篇的朋友!!):

https://support.microsoft.com/zh-tw/help/2756688?fbclid=IwAR0kwUTmCFEFvMycN8jrLwsVYxg9vV6Zfx_WhSqwVH-2rnPucQWOQpRf4lM

第一步:安裝Apache

apache 官網:https://www.apachelounge.com/download/

這邊很重要,apache後面有一個vc後面又接著一個數字,這數字在第二步安裝mod_wsgi會用到,這裏我選apache2.4 vc14,windows 64位元版,如下圖:

下載完後解壓縮,會看到一個Apache24的資料夾,將他移到c槽中,然後打開cmd,輸入下面指令:

>> cd c:\Apache24\bin
>> httpd

然後打開browser,輸入 “localhost”,看到下圖就是安裝成功:

第二步:安裝mod_wsgi

下載位置:https://www.lfd.uci.edu/~gohlke/pythonlibs/#pil

這邊很重要,版本都要對應一樣才行,我剛剛第一步選了vc1.4,所以我要找vc1.4,我python版本是3.6,所以要找cp3.6,windows是64位元所以要找64位元的版本,如下圖:

接著是個人建議,建議下載完後把這個mod_wsgi放到python的根目錄中,然後打開cmd cd到 python的根目錄,執行下列指令:

>> pip install "mod_wsgi-4.6.5+ap24vc14-cp36-cp36m-win_amd64.whl"
>> mod_wsgi-express module-config

然後把output全部複製,打開c:\Apache24\bin\httpd.conf這個檔案,添加如下圖的部分:

然後重新運行localhost,如果有東西就是成功了~~

第三步:安裝Flask

按著下面的指令打就好了~

>> pip install flask

第四步:設置python以及wsgi的文件

接著在c槽中創建一個資料夾,我名稱用“et_test”,裡面要創建一個py檔及wsgi檔,我這邊是用et_test.py以及et_test.wsgi

et_test.py如下:

from flask import *app=Flask(__name__)@app.route('/')def index():   return "eating test~~~"if __name__ == '__main__':   app.run()

et_test.wsgi如下:

import sys, ossys.path.insert(0, os.path.dirname(__file__))from et_test import appapplication = app

在httpd.conf的最後面加上:

<VirtualHost *:80> DocumentRoot "C:\et_test"  ServerName localhost   <Directory "C:\et_test">    Order allow,deny    Allow from all   </Directory>  WSGIScriptAlias /et_web C:\et_test\et_test.wsgi</VirtualHost>

然後要再做一件事,找出下面的程式,把中間comment掉:

<Directory />  # AllowOverride none  # Require all denied</Directory>

然後訪問 localhost/et_web:

over~~~~

--

--