Apache mod_wsgi模块简介

2023-10-27

Apache HTTP服务器的mod_wsgi扩展模块,实现了Python WSGI标准,可以支持任何兼容Python WSGI标准的Python应用。

出于安全的考虑,建议使用mod_wsgi 3.5及以后的版本,最新版本是2017年1月发布的4.5.14。

1. WSGI(Web Server Gateway Interface)是一个统一的Python接口标准(PEP 3333),该标准描述了Python应用如何与Web服务器通信,多个Python应用之间如何级联以处理请求。

WSGI的实现位于Python应用和Web服务器之间,从而支持将兼容的Python应用无缝部署到任何Web服务器上。


2. Apache服务器对Python WSGI应用的执行模式

1)embedded模式

在Apache的子进程中执行Python WSGI应用。这样,Python WSGI应用将与Apache上的其他应用共享进程。

执行性能高,但需要调整Apache MPM设置。

2)daemon模式(推荐)

Apache启动专用进程执行Python WSGI应用,但是Python WSGI应用需要提供进程监控或WSGI适配器。

执行更安全。


3. mod_wsgi扩展模块的安装

1)建议安装环境

  • Python 2.6或Python 3.3以后版本
  • Apache 2.4以后版本

2)作为Apache的一个扩展模块,以源代码安装到Apache服务器

  • wget https://github.com/GrahamDumpleton/mod_wsgi/archive/4.5.14.tar.gz
  • tar xvfz mod_wsgi-4.5.14.tar.gz
  • ./configure
  • make
  • make install
  • LoadModule wsgi_module modules/mod_wsgi.so
  • service httpd restart
在启动服务器之前,还需要配置Apache服务器以加载mod_wsgi扩展模块,将Web请求转发到该模块处理。

3)作为Python安装包,以源代码安装到Python的虚拟环境

  • wget https://github.com/GrahamDumpleton/mod_wsgi/archive/4.5.14.tar.gz
  • tar xvfz mod_wsgi-4.5.14.tar.gz
  • python setup.py install

4)作为Python安装包,从PyPI在线安装到Python的虚拟环境

  • pip install mod_wsgi

4.验证安装

利用mod_wsgi-express命令行工具,启动Apache服务器和mod_wsgi扩展模块,无需任何配置。

  • mod_wsgi-express start-server
打开浏览器,访问http://localhost:8000/


参考文献:

旧官网https://code.google.com/archive/p/modwsgi/

新官网http://modwsgi.readthedocs.io/en/develop/

源代码https://github.com/GrahamDumpleton/mod_wsgi

WSGI标准http://wsgi.readthedocs.io/en/latest/


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Apache mod_wsgi模块简介 的相关文章

随机推荐

  • HTTP抓包利器Fiddler基础及进阶教程(二)---- 手机端抓包+强制全局代理

    本文将进一步介绍Fiddler在移动端抓包的方法 一 配置Fiddler 二 查看当前IP 方式有很多种 选择运行 输入 cmd 在输入Ipconfig 三 验证是否配置成功 将上一步拿到的 IP Fiddler端口号 组成的链接用浏览器打
  • 读书笔记(2018年3月)-《卓有成效的管理者》总结

    1 善用时间 有效的管理者知道他们的时间用在什么地方 他们所能控制的时间非常有限 他们会有系统地工作 来善用这有限的时间 1 记录时间 记录时间耗用的实际情形 2 诊断时间 做有系统的时间管理 首先要找出什么事根本不必做 这些事做了也完全浪
  • Windows Server 2016抓取明文密码

    临时禁止Windows Defender REG ADD HKEY LOCAL MACHINE SOFTWARE Policies Microsoft Windows Defender v DisableAntiSpyware t REG
  • 原 QNetworkAccessManager实现curl上传表单文件

    心酸的过程我就不说了 直接上菜 如何用Qt实现 curl F file task plist http www fatjb com uploadfile QFile file m sTaskPlistPath if file exists
  • 【C++11多线程】线程的创建与结束:thread

    文章目录 1 普通函数作为线程函数 1 1 thread 1 2 join 1 3 detach 1 4 joinable 2 函数对象作为线程函数 3 lambda表达式作为线程函数 4 类成员函数作为线程函数 5 向线程函数传递参数 1
  • 构建一个简单的以太坊+IPFS+React.js去中心化应用DApp

    我们为什么要构建这个 在以太坊区块链上存储大量数据是非常昂贵的 根据以太坊的黄皮书 它是大约20 0000gas 256bit 8字节 1字 基于02 28 2018 gas价格为4gwei gas 请参阅 https ethgasstat
  • 多目标跟踪2021总结

    11年it研发经验 从一个会计转行为算法工程师 学过C c java android php go js python CNN神经网络 四千多篇博文 三千多篇原创 只为与你分享 共同成长 一起进步 关注我 给你分享更多干货知识 目录 SOT
  • CLI 命令行实用程序开发基础

    CLI 命令行实用程序开发基础 代码传送门 GoOnline平台 1 概述 CLI Command Line Interface 实用程序是Linux下应用开发的基础 正确的编写命令行程序让应用与操作系统融为一体 通过shell或scrip
  • 【笔试&面试】关于动态链接库

    动态链接库英文为DLL 是Dynamic Link Library 的缩写形式 DLL是一个包含可由多个程序同时使用的代码和数据的库 DLL不是可执行文件 动态链接提供了一种方法 使进程可以调用不属于其可执行代码的函数 函数的可执行代码位于
  • 关闭windows defender安全中心的方法

    windows defender 安全中心 真的是shit 灵敏度太高了 一般的绿软都会被杀 而且是不提示直接删除 想反悔都没办法 并且 Windows Defender Antivirus 导致资源使用率高或系统出现其他问题引起间歇性的卡
  • Python 数据分析测试6 之 分组数据的 柱状图显示

    Time 2020 08 06 Author Xiaohong 运行环境 OS Windows 10 Python 3 7 功能 导入1份文件 以鞋部位分组 求得记录数 及累计缴库量 效果如下 1 以鞋部位分组 求得记录数 2 以鞋部位分组
  • 华为OD机试真题- 篮球比赛-2023年OD统一考试(B卷)

    题目描述 篮球 5V5 比赛中 每个球员拥有一个战斗力 每个队伍的所有球员战斗力之和为该队伍的总体战斗力 现有10个球员准备分为两队进行训练赛 教练希望2个队伍的战斗力差值能够尽可能的小 以达到最佳训练效果 给出10个球员的战斗力 如果你是
  • 学习STM32 SPI学习与应用

    认识一下SPI SPI的全称是 Serial Peripheral Interface 意为串行外围接口 SPI接口主要应用在EEPROM FLASH 实时时钟 AD转换器 还有数字信号处理器和数字信号解码器之间 SPI是一种高速的 全双工
  • 中大型企业选择云服务器还是传统服务器自建机房成本核算

    中大型企业自建机房还是选择阿里云服务器或腾讯云服务器 企业上云是趋势 大型企业自己购买服务器自建机房还是使用云服务器更省钱 自建机房一次性投入 但是云服务器每年都需要续费 云服务器吧从机房部署 容灾备份 安全可靠 运维及成本等方面来全方位对
  • Flask学习笔记(十三)数据库基本操作

    数据库基本操作 在Flask SQLAlchemy中 插入 修改 删除操作 均由数据库会话管理 会话用db session表示 在准备把数据写入数据库前 要先将数据添加到会话中然后调用commit 方法提交会话 数据库会话是为了保证数据的一
  • vue项目中自动拉取更新Iconfont(阿里巴巴图标库)

    在vue项目中使用 iconfont图标库 网上的栗子很多 这边就随手给一个 点这里 上面的解决了 那我就很苦恼 我每次添加 或删除 或更新图标库 需要重新下载 自己手动去覆盖吗 我是拒绝的 so 自动覆盖就很有必要了 贴一下我的iconf
  • Linux通过Nginx部署Vue项目

    Vue Springboot前后端项目分离开发 我们在部署的时候就需要将两者分开来部署 vue部署 由于我们是通过Linux nginx的方式来部署vue 因此在你的linux中需要安装nginx nginx的安装方式不多说 直接解压ngi
  • 网络安全期末复习

    前言 本文用于网络安全课期末复习资料 都是从老师上课讲的ppt和课本总结的 可能不太全 后面有一部分习题 填空和简答 如果需要word版可以找我要 目录 知识点 信息安全属性 网络防御模型 密码体制 数字证书与公钥基础设施 PKI 防火墙
  • 油盐微服务——声明式服务调用Feign

    文章目录 Feign快速入门 参数绑定 继承特性 Ribbon配置 Hystrix配置 对于前面的Ribbon和Hystrix的介绍 Spring Cloud Feign基于Netflix Feign实现 封装整合了以上两个工具 来简化开发
  • Apache mod_wsgi模块简介

    Apache HTTP服务器的mod wsgi扩展模块 实现了Python WSGI标准 可以支持任何兼容Python WSGI标准的Python应用 出于安全的考虑 建议使用mod wsgi 3 5及以后的版本 最新版本是2017年1月发