Windows上部署Python flask项目
最近使用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

安装依赖
这个项目用到了下面两个依赖
pip install Flask==2.3.2
pip install PyMySQL==1.0.3
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
注:这里的app's path目录一定要用正斜杠,反斜杠的话会提示Internal Server Error因为是Windows系统,习惯复制目录粘贴,而复制的目录里是反斜杠,所以这里容易出错。
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服务,成功后,访问页面

Windows上部署Python flask项目的更多相关文章
- 使用wfastcgi在IIS上部署Python Flask应用
本文介绍了如何在Windows上部署Python Flask应用,相关环境如下: 操作系统:windows 7 Python:3.4 WFastCGI: 2.2 应用所用到的包版本如下: Flask= ...
- 【Centos】【Python】【Flask】阿里云上部署一个 flask 项目
1. 安装 python3 和 pip3 参考:http://www.cnblogs.com/mqxs/p/8692870.html 2.安装 lnmpa 集成开发环境 参考:http://www.c ...
- 使用Nginx+Uwsgi部署Python Flask项目
第一次用Flask做Web(也是第一次用Python做Web),在部署的时候遇到了不少问题,现在将过程就下来,供在这方面也有疑惑的人参考.(PS:使用Apache+mod_wsgi部署模式的可以参考另 ...
- [傻瓜式一步到位] 阿里云服务器Centos上部署一个Flask项目
网络上关于flask部署Centos的教程有挺多,不过也很杂乱. 在我第一次将flask上传到centos服务器中遇到了不少问题,也费了挺大的劲. 在参考了一些教程,并综合了几个教程之后才将flask ...
- 使用Nginx+uwsgi在亚马逊云服务器上部署python+django项目完整版(二)——部署配置及相关知识
---恢复内容开始--- 一.前提: 1.django项目文件已放置在云服务器上,配置好运行环境,可正常运行 2.云服务器可正常连接 二.相关知识 1.python manage.py runserv ...
- Windows上部署Python
以Python 3.5为例 1.到https://www.python.org/downloads/windows/下载embeddable zip file类型的压缩包python-3.5.1-em ...
- 【Azure 应用服务】Azure App Service For Linux 上实现 Python Flask Web Socket 项目 Http/Https
问题描述 在上篇博文"[Azure 应用服务]App Service for Linux 中实现 WebSocket 功能 (Python SocketIO)"中,实现了通过 HT ...
- 在 Windows 上使用 Python 进行 web 开发
本文由葡萄城技术团队于原创并首发 转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 上一篇我们介绍了在Windows 10下进行初学者入门开发Python的指 ...
- Nginx + FastCGI + Django在windows上部署及nginx常用命令
一般应用都是部署在linux系统上,不会在windows上部署,emmm..所以有兴趣的就瞧瞧吧哈哈 nginx工作原理: nginx用于处理静态文件,动态部分经由fastcgi .scgi或uWSG ...
- 在windows上部署使用redis出现的问题及解决方法
在windows上部署使用Redis出现问题的解决方法 原文链接:https://www.cnblogs.com/herry52/p/5938902.html 下载Redis 在Redis的官网下载 ...
随机推荐
- Educational Codeforces Round 92 (Rated for Div. 2) A~C
原作者为 RioTian@cnblogs, 本作品采用 CC 4.0 BY 进行许可,转载请注明出处. 最近写学习了一下网络爬虫,但昨天晚上的CF让人感觉实力明显退步,又滚回来刷题了QAQ... 比赛 ...
- Web Components从技术解析到生态应用个人心得指北
Web Components浅析 Web Components 是一种使用封装的.可重用的 HTML 标签.样式和行为来创建自定义元素的 Web 技术. Web Components 自己本身不是一个 ...
- 使用 Serverless Devs 插件快速部署前端应用
作者| 邓超 Serverless Devs 开源贡献者 背景 我们在 上文 [Aliyun] [FC] 如何使用 @serverless-devs/s 部署静态网站到函数计算 中,详细的介绍了如何通 ...
- SpringCloud学习 系列七、EurekaServer集群创建
系列导航 SpringCloud学习 系列一. 前言-为什么要学习微服务 SpringCloud学习 系列二. 简介 SpringCloud学习 系列三. 创建一个没有使用springCloud的服务 ...
- 8、SpringBoot 事务
系列导航 springBoot项目打jar包 1.springboot工程新建(单模块) 2.springboot创建多模块工程 3.springboot连接数据库 4.SpringBoot连接数据库 ...
- vue-element-admin完整开源项目介绍、本地部署和初步探索
1 说明: 1.1 从一个广受好评的开源项目:vue-element-admin的本地化,来初步分析vue的相关知识. 2 github地址和下载本地部署: https://github.com/Pa ...
- Liunx常用操作(11)-VI编辑器-末行模式命令
vI编辑器三种模式 分别为命令模式.输入模式.末行模式.
- @Import 源码解析
转发请注明出处: @Import通过快速导入的方式实现把实例加入spring的IOC容器中:一般@EnableXXX注解是通过@Import实现具体的功能(@EnableXXX注解上加个@Import ...
- kafka 性能优化与常见问题优化处理方案
本文为博主原创,未经允许不得转载: 1. JVM参数优化设置 kafka是scala语言开发,运行在JVM上,需要对JVM参数合理设置,修改bin/kafka-start-server.sh中的jv ...
- phpcms: Warning: "continue" targeting switch is equivalent to "break" 解决方案
Warning: "continue" targeting switch is equivalent to "break". Did you mean to u ...