Windows使用Apache和mod_wsgi部署项目

一、安装Python

确定好所需要的python版本。

二、安装Apache

apache下载地址:http://httpd.apache.org/docs/current/platform/windows.html#down
下载完成后做如下操作

1、更改httpd.conf文件,找到如下代码并更改路径
Define SRVROOT "E:/Apache24"
ServerRoot "${SRVROOT}"

找到#Listen 12.34.56.78:80在下面添加监听端口号
Listen 18000
2、以管理员身份运行cmd(右键点击cmd,看到管理员身份运行),进入E:\Apache24\bin目录下,输入命令

        > httpd -k install             -->    安装

在安装完成之后,输入httpd -k install后就可以启动apache服务了,然后双击bin目录下的ApacheMonitor.exe就可以看到apache的状态了,可以手动控制apache服务,也可以通过cmd使用以下其他命令操作
        > httpd -k start            -->    重动

        > httpd -k stop             -->    停止

        > httpd -k uninstall        -->    卸载
3、apache服务启动之后,在浏览器输入localhost:18000,18000是之前在配置文件里设置的端口号,显示It works!表示访问成功。

三、安装Visual Studio

这一步最好是在下载启动apache之前,如果上步不成功,就先进行这一步,这一步是必须的,如果没有这个工具,后面的mod_wsgi也安不上,会提示没有wheels。假如不确定自己有没有这个工具,也可以直接跳过这一步,等后面报错再回来安装,在下载apache的文件夹可以看到readme文本文档,打开后也可看到如下的要求:

直接打开官方网站Microsoft C++ 生成工具 - Visual Studio直接下载安装

如果安装时报错提示没有Microsoft .NET Framework,根据提示的版本去官网找到并下载,这里我安装的是4.8版本,按需安装:适用于 Windows 的 Microsoft .NET Framework 4.8 脱机安装程序 - Microsoft 支持

安装Visual Studio时注意勾选:左上角的C++桌面开发应用(大概是六个) 并在右下角扩选一个c++ATL

四、安装mod_wsgi

cmd输入:

set MOD_WSGI_APACHE_ROOTDIR=E:/Apache24
pip install mod_wsgi
安装完成后cmd接着输入
mod_wsgi-express module-config
将输出的3行代码到apache的httpd.conf配置文件中,就写到刚刚的端口号下就行

在项目文件下编写wsgi文件
wsgi文件可以通过mod_wsgi模块把flask项目和apache服务连接起来:
import sys
sys.path.insert(0, "E:\pythonProject\flaskProject")  # 添加项目路径到python解释器的搜索路径中
from app import app as application  # 这里必须是application


添加wsgi文件的路径到apache服务的httpd.conf文件中:

Listen 18000

LoadFile "C:/Users/Administrator/AppData/Local/Programs/Python/Python311/python311.dll"
LoadModule wsgi_module "C:/Users/Administrator/AppData/Local/Programs/Python/Python311/Lib/site-packages/mod_wsgi/server/mod_wsgi.cp311-win_amd64.pyd"
WSGIPythonHome "C:/Users/Administrator/AppData/Local/Programs/Python/Python311"

ServerName 121.**.**.**   #这里写入服务器ip地址

<VirtualHost *>
    WSGIScriptAlias / E:\pythonProject\flaskProject\test.wsgi
    <Directory 'E:\pythonProject\flaskProject'>
        Require all granted
        Require host ip
    </Directory>
</VirtualHost>

访问地址:http://localhost:18000/

五、添加入站规则

点开控制面板-->找到防火墙--> 高级设置-->新建入站规则-->添加端口18000以及80。

如果是云服务器,还需要在控制台上找到实例的安全组,添加以上入站端口。

  • 15
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值