Apache 2.4 部署 Flask 应用

本文详细介绍了在Windows 10和CentOS 7环境下,如何部署Apache 2.4并配置Flask应用。包括Apache的安装、环境变量设置、配置虚拟主机、反向代理和跨域设置,以及mod_wsgi的编译和安装。特别强调了mod_wsgi与Apache版本的兼容性问题和Flask应用的部署实例。


Apache 2.4 部署 Flask 应用

Windows环境

Windows 10 (x64)

安装Apache 2.4
  1. 下载安装包
    • 链接 https://www.apachehaus.com/cgi-bin/download.plx
    • 本文中使用的版本为 2.4.41
    • 注意,务必将服务器安装在磁盘的顶级目录内,如C:\Apache24
  2. 系统服务的安装与卸载
    • 以管理员身份打开命令行,进入安装目录下的bin目录
    • 目录结构如下
      D:\APP-SERVER\APACHE24
      ├─bin
      │  └─iconv
      ├─cgi-bin
      ├─conf
      │  ├─extra
      │  ├─original
      │  │  └─extra
      │  └─ssl
      ├─error
      │  └─include
      ├─htdocs
      ├─icons
      │  └─small
      ├─include
      ├─lib
      ├─logs
      └─modules
      
    • 将Apache安装为系统服务
      .\httpd.exe -k install
      
      自行制定服务名称时,使用 -n 选项
      .\httpd.exe -k install -n "Apache-2.4.41"
      
    • 将系统服务中的Apache卸载
      .\httpd.exe -k uninstall
      
      如果你在安装时指定了名字,卸载时也要用-n选项指定名字
      .\httpd.exe -k uninstall -n "Apahce-2.4.41"
      
  3. 环境变量的设置 - 可选
    • 进入 控制面板 -> 系统和安全 -> 系统
    • 打开Windows的高级系统设置
    • 打开环境变量设置
    • 修改用户变量中的Path变量,为其新增一项,内容为Apache2.4的安装目录下的bin目录
      在这里插入图片描述
在启动前的修改必要的配置
设置SRVROOT和ServerRoot

修改httpd.conf,设置ServerRoot( 服务器所在目录 )与SRVROOT(如果配置文件存在此关键词则设置,否则不必理会,有的配置文件可能没有) 【Apache安装目录/conf/httpd.conf】

Define SRVROOT "D:\Apache24"
ServerRoot "D:\Apache24"
启动与停止Apache2.4
  1. 使用windows的服务进行启动和停止
    在这里插入图片描述
  2. 在命令行启动/停止服务
    启动服务
    httpd.exe -k start
    
    停止服务
    httpd.exe -k stop
    
新增监听地址和端口

若要监听多个端口,则需要修改httpd.conf,新增Listen选项【Apache安装目录/conf/httpd.conf】
httpd.conf截选,如下所示的配置将监听本机全部IP的80端口和换回测试地址的9000端口

#
# Listen: Allows you to bind Apache to specific IP addresses and/or
# ports, instead of the default. See also the <VirtualHost>
# directive.
#
# Change this to Listen on specific IP addresses as shown below to 
# prevent Apache from glomming onto all bound IP addresses.
#
#Listen 12.34.56.78:80
Listen 0.0.0.0:80
Listen 127.0.0.1:9000
配置虚拟主机
  1. 修改httpd.conf,加载虚拟主机模块 【Apache安装目录/conf/httpd.conf】
    找到此行内容,把行首的#号去掉
    LoadModule vhost_alias_module modules/mod_vhost_alias.so
    
  2. 修改httpd.conf, 包含子配置文件httpd-vhosts.conf 【Apache安装目录/conf/extra/httpd-vhosts.conf】
    找到此行内容,把行首的#号去掉
    Include conf/extra/httpd-vhosts.conf
    
  3. 修改httpd-vhosts.conf,新增虚拟主机配置,示例如下
    <VirtualHost *:80> #监听本机全部IP的80号端口
      ServerAdmin ?????????@qq.com
      DocumentRoot "E:/Projects/Python-VS/learning/Bl
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值