python flask apache 部署
阿新 • • 發佈:2020-07-31
1,python 3.6.3
2,apache 24
3,mod_wsgi-4.5.24+ap24vc14-cp36-cp36m-win_amd64.whl
4,執行 pip installmod_wsgi-4.5.24+ap24vc14-cp36-cp36m-win_amd64.whl
(修改配置檔案httpd.conf)
5,mod_wsgi-express module-config(安裝服務)
將執行的結果
----
LoadFile "c:/python36/python36.dll"
LoadModule wsgi_module "c:/python36/lib/site-packages/mod_wsgi/server/mod_wsgi.cp36-win_amd64.pyd"
----
放在<IfModule unixd_module>的上面
6,修改
Define SRVROOT "D:/Apache24" ServerRoot "${SRVROOT}" #Listen 192.168.0.121:8080 Listen 219.244.70.10:80 Listen 127.0.0.1:2001 #Listen 8080
7,修改,如果有多個程式可以設定多個。
<VirtualHost *:80> WSGIScriptAlias /1234 "D:\Apache24\htdocs\untitled\run.wsgi" ServerAdmin [email protected] DocumentRoot "D:/Apache24/htdocs" <Directory "D:/Apache24/htdocs"> Require all granted </Directory> </VirtualHost>
8,如果多個程式共用一個埠,可以設定代理(多個VirtualHost時候),一般轉發給本機的localhost。(還不會)
ServerName 219.244.70.10:80
#ProxyPass /xh123 http://localhost:81/xh123 #ProxyPassReverse /clptAPP http://219.244.70.9:8080
ProxyPass /http://192.168.100.22/
ProxyPassReverse /http://192.168.100.22/
ProxyPass 很好理解,就是把所有來自客戶端對 ServerName 219.244.70.10:80的請求轉發給http://192.168.100.22
9,安裝apache 服務httpd.exe -k install
10 啟動ApacheMonitor.exe(bin),測試apache
11 啟動flask程式--編寫run.wsgi
import sys #app's path #sys.path.insert(0,"E:/pyWork/testweb") #專案地址 #E:/Apache24/htdocs/untitled sys.path.insert(0,"D:/Apache24/htdocs/untitled") from app import app as application #python檔案地址匯入 物件 #Initialize WSGI app object #application = app
注意
1,訪問檔案的絕對路徑
2,from Crypto.Cipher import AES報錯
python 在 Windows下使用AES時要安裝的是pycryptodome 模組 pip install pycryptodome
python 在 Linux下使用AES時要安裝的是pycrypto模組 pip install pycrypto
不可以同時安裝,若同時安裝,請同時解除安裝後,從新安裝需要的模組