Windows上部署Python flask项目

发布时间 2023-07-09 19:01:00作者: xjournal

最近使用Python flask做了一个项目要部署,网上一大堆教程没有一个完整,最后看了多个教程才配置完成,下面根据自己的环境整理一下做个备忘录

环境:

Windows 10

apache httpd-2.4.54(vc++我从2008-2022全装了)

Python 3.11(环境变量别忘了配)

MySQL 8.0.31(项目中用到了数据库)

上面的环境需要提前装好,下面直接说配置。

配置

安装mod_wsgi

下载地址:https://www.lfd.uci.edu/~gohlke/pythonlibs/#mod_wsgi

注意要和Python版本一样,Python 3.11选择cp311,这里选择的是 mod_wsgi‑4.9.2‑cp311‑cp311‑win_amd64.whl

cmd启动后使用pip安装,pip找不到时要添加系统变量,或者cmd进入Python安装目录下的Scripts文件夹,执行安装:

pip install mod_wsgi-4.9.2-cp311-cp311-win_amd64.whl

flask项目

把flask项目复制到www目录中,这里放到D:\01.www\html\flask目录中,入口文件是main.py

这里创建个main.wsgi文件,写入内容:

import sys

#app's path 替换成自己的目录
sys.path.insert(0,"D:/01.www/html/flask")

#main是主程序,根据自己的填写
from main import app

#Initialize WSGI app object
application = app

 httpd.conf配置

打开httpd.conf文件,找到mod_access_compat把前面的#号去掉

LoadModule access_compat_module modules/mod_access_compat.so

打开cmd 执行命令:

mod_wsgi-express module-config

复制回显内容,粘贴到LoadModule之后。

然后再文件最后添加

<VirtualHost * >
	ServerName auth.com
	WSGIScriptAlias / D:\01.www\html\flask\main.wsgi
	<Directory "D:\01.www\html\flask">
		Require all granted
	</Directory>	
</VirtualHost>

其中WSGIScriptAlias指定刚创建的wsgi文件,Directory指定www中flask项目目录。

重启apache服务,成功后,访问页面