Windows下搭建apache+mod-wsgi+python django环境
Posted on 2020-10-10 18:16 cmzchxj 阅读(1408) 评论(0) 编辑 收藏 举报Windows下搭建apache+mod-wsgi+python django环境【全过程】
1. 教程目录
- Python安装
- Apache安装
- Mod_wsgi安装
- 将Django项目部署到Apache服务器
2. 准备工作
环境说明:Windows 10 + Python 3.6.5 + Apache 24
- 1
- 下载Python安装包:https://www.python.org/downloads/
- 下载Apache安装包:http://httpd.apache.org/download.cgi
3. Python安装
- 双击python的.exe安装文件,勾选“Add Python 3.6 to Path”,点击"Customize Installation",如图:
- 勾选想下载的功能,点击“Next”,如图:
- 勾选其它相关配置,选择自定义安装路径,点击“Install”,如图:
- 等待安装完成,如图:
- 打开CMD,输入python,查看python版本信息,如图:
4. Apache安装
- 解压apache的压缩包,如图:
- 将apache的bin目录加入到环境变量path中,如图:
- 修改httpd.conf配置文件中SRVROOT的路径为apache的安装目录,如图:
默认是 Define SRVROOT “/Apache24” - cmd输入命令:httpd -k install -n “Apache”,将apache服务加入到Windows服务中,如图:
- 启动Apache服务,如图:
5. Mod_wsgi安装
- 下载mod_wsgi Python的插件 http://www.lfd.uci.edu/~gohlke/pythonlibs/#mod_wsgi
Mod_wsgi, a WSGI adapter module for the Apache HTTP Server 2.x.
Linked against the VC10, and VC14 binaries from Apache Lounge and VC9 binaries from Apache House.
See Running mod_wsgi on Windows for version (in)compatibilities.
mod_wsgi‑4.5.24+ap24vc14‑cp35‑cp35m‑win32.whl
mod_wsgi‑4.5.24+ap24vc14‑cp35‑cp35m‑win_amd64.whl
mod_wsgi‑4.5.24+ap24vc14‑cp36‑cp36m‑win32.whl
mod_wsgi‑4.5.24+ap24vc14‑cp36‑cp36m‑win_amd64.whl
mod_wsgi‑4.5.24+ap24vc14‑cp37‑cp37m‑win32.whl
mod_wsgi‑4.5.24+ap24vc14‑cp37‑cp37m‑win_amd64.whl
mod_wsgi‑4.5.24+ap24vc9‑cp27‑cp27m‑win32.whl
mod_wsgi‑4.5.24+ap24vc9‑cp27‑cp27m‑win_amd64.whl
mod_wsgi‑4.6.5+ap24vc14‑cp35‑cp35m‑win32.whl
mod_wsgi‑4.6.5+ap24vc14‑cp35‑cp35m‑win_amd64.whl
mod_wsgi‑4.6.5+ap24vc14‑cp36‑cp36m‑win32.whl
mod_wsgi‑4.6.5+ap24vc14‑cp36‑cp36m‑win_amd64.whl
mod_wsgi‑4.6.5+ap24vc15‑cp37‑cp37m‑win32.whl
mod_wsgi‑4.6.5+ap24vc15‑cp37‑cp37m‑win_amd64.whl
mod_wsgi‑4.6.5+ap24vc9‑cp27‑cp27m‑win32.whl
mod_wsgi‑4.6.5+ap24vc9‑cp27‑cp27m‑win_amd64.whl
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
如 mod_wsgi-4.5.24+ap24vc14-cp36-cp36m-win_amd64.whl
i. 这个插件对应的Apache版本是24, VC是14
ii. Python版本是3.6
iii. 64位系统
在下载时要选择相应的版本,否则Apache启动时会有问题
- 把下载的.whl文件复制到python\Scripts下,cmd切换到该目录下,使用pip install “mod_wsgi-4.5.24+ap24vc14-cp36-cp36m-win_amd64.whl”,如图:
- 在安装成功后在python的安装目录的\scripts文件夹下运行命令:mod_wsgi-express module-config,输出如下三行结果,如图:
把这三行内容复制到httpd.conf文件下进行配置,如图:
LoadFile "d:\software\python3.6\python36.dll"
LoadModule wsgi_module "d:\software\python3.6\lib\site-packages\mod_wsgi\server\mod_wsgi.cp36-win_amd64.pyd"
WSGIPythonHome "d:\software\python3.6"
- 1
- 2
- 3
6. 将Django项目部署到Apache服务器
- 修改Apache的httpd.conf文件,添加如下配置:
LoadFile "d:\software\python3.6\python36.dll"
LoadModule wsgi_module "d:\software\python3.6\lib\site-packages\mod_wsgi\server\mod_wsgi.cp36-win_amd64.pyd"
WSGIPythonHome "d:\software\python3.6"
#指定项目的wsgi.py配置文件路径
WSGIScriptAlias / D:\fe_server\fe_server\wsgi.py
#指定项目目录
WSGIPythonPath D:\fe_server
<Directory D:\fe_server\fe_server>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
#项目静态文件地址
Alias /static D:\fe_server\static
<Directory D:\fe_server\static>
AllowOverride None
Options None
Require all granted
</Directory>
#项目/auto_test 地址
Alias /auto_test D:\fe_server\auto_test
<Directory D:\fe_server\auto_test>
AllowOverride None
Options None
Require all granted
</Directory>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 将httpd.conf配置文件中的 “Require all denied” 修改为 “Require all granted”
- 将httpd.conf配置文件中的监听端口80改为8088
- 重新启动Apache服务,即可在浏览器中访问该网站
- 配置Apache允许所有IP访问,修改Listen:80 为 IP:port,ServerName为 IP:port即可达到效果
2******************************************
Windows环境下使用 Apache+mod_wsgi 部署Django项目
#Windows环境下使用 Apache+mod_wsgi 部署Django项目#
在Windows环境下部署Django项目真的非常的麻烦,我自己查过很多教程,有很多都是半途而废了,最后咬着牙把Apache+mod_wsgi这个部署方案算是基本搞定。作为菜鸟满满的成就感。就此分享下。
1.前期准备工作
Python版本: Python 3.6.3
Apache版本:httpd-2.4.33-win64-VC14
Django版本:Django 2.0.2
期间要注意Apache mod_wsgi 与Python版本的对应问题,如果版本不符的话是会出问题的
2.Apahce的安装
可以百度Apache安装,或者登陆Apache的官网 http://httpd.apache.org/根据自己的电脑环境进行下载安装。
解压后的如图:
![](https://img-blog.csdn.net/20180608153251128)
然后用记事本打开Apache24/conf/httpd.conf 准备修改配置文件,
ServerRoot "c:/Apache24"这个是Apache的安装目录,文件解压到哪里就填什么位置
![](https://img-blog.csdn.net/2018060815333857)
#ServerName www.example.com:80是Apache的服务地址,把前面的#可以去掉,"www.example.com"可以改成"localhost",也可以不改
![](https://img-blog.csdn.net/20180608153313270)
下一步在系统中添加apache的服务
httpd.exe -k install -n "服务名字" httpd后的.exe可以省略
![](https://img-blog.csdn.net/20180608153401816)
然后可以进入bin目录点击 httpd.exe 会出现命令提示符,不要关闭这个命令提示符,然后打开浏览器输入“localhost”,点击回车,如果显示“It works!”则说明Apache的配置已经成功了
3.安装mod_wsgi
①.下载mod_wsgi的地址 http://www.lfd.uci.edu/~gohlke/pythonlibs/#mod_wsgi,
因为我的python版本是3.6.3 apache版本是ap24vc14 电脑系统是64位,版本要对应
![](https://img-blog.csdn.net/20180608153508912)
②.把下载的.whl文件复制到python\Scripts下使用
pip install "mod_wsgi-4.6.4+ap24vc14-cp36-cp36m-win_amd64.whl"
pip install ".whl的文件目录也是可以的"
然后使用命令 mod_wsgi-express module-config 输出三行结果
![](https://img-blog.csdn.net/20180608153418623)
LoadFile "c:/programdata/anaconda3/python36.dll"
LoadModule wsgi_module "c:/programdata/anaconda3/lib/site-packages/mod_wsgi/serv
er/mod_wsgi.cp36-win_amd64.pyd"
WSGIPythonHome "c:/programdata/anaconda3"
这三行结果需要保存下,之后会在httpd.cnf文件下进行配置
4.在httpd.cnf文件中配置django项目
在Windows环境下部署Django项目真的非常的麻烦,我自己查过很多教程,有很多都是半途而废了,最后咬着牙把Apache+mod_wsgi这个部署方案算是基本搞定。作为菜鸟满满的成就感。就此分享下。
1.前期准备工作
Python版本: Python 3.6.3
Apache版本:httpd-2.4.33-win64-VC14
Django版本:Django 2.0.2
期间要注意Apache mod_wsgi 与Python版本的对应问题,如果版本不符的话是会出问题的
2.Apahce的安装
可以百度Apache安装,或者登陆Apache的官网 http://httpd.apache.org/根据自己的电脑环境进行下载安装。
解压后的如图:
然后用记事本打开Apache24/conf/httpd.conf 准备修改配置文件,
ServerRoot "c:/Apache24"这个是Apache的安装目录,文件解压到哪里就填什么位置
#ServerName www.example.com:80是Apache的服务地址,把前面的#可以去掉,"www.example.com"可以改成"localhost",也可以不改
下一步在系统中添加apache的服务
httpd.exe -k install -n "服务名字" httpd后的.exe可以省略
然后可以进入bin目录点击 httpd.exe 会出现命令提示符,不要关闭这个命令提示符,然后打开浏览器输入“localhost”,点击回车,如果显示“It works!”则说明Apache的配置已经成功了
3.安装mod_wsgi
①.下载mod_wsgi的地址 http://www.lfd.uci.edu/~gohlke/pythonlibs/#mod_wsgi,
因为我的python版本是3.6.3 apache版本是ap24vc14 电脑系统是64位,版本要对应
②.把下载的.whl文件复制到python\Scripts下使用
pip install "mod_wsgi-4.6.4+ap24vc14-cp36-cp36m-win_amd64.whl"
pip install ".whl的文件目录也是可以的"
然后使用命令 mod_wsgi-express module-config 输出三行结果
LoadFile "c:/programdata/anaconda3/python36.dll"
LoadModule wsgi_module "c:/programdata/anaconda3/lib/site-packages/mod_wsgi/serv
er/mod_wsgi.cp36-win_amd64.pyd"
WSGIPythonHome "c:/programdata/anaconda3"
这三行结果需要保存下,之后会在httpd.cnf文件下进行配置
4.在httpd.cnf文件中配置django项目
最后在apache/bin 目录中点击 httpd.exe 然后访问就可以了
分类:
pytho学习
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 用 C# 插值字符串处理器写一个 sscanf
· Java 中堆内存和栈内存上的数据分布和特点
· 开发中对象命名的一点思考
· .NET Core内存结构体系(Windows环境)底层原理浅谈
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 本地部署DeepSeek后,没有好看的交互界面怎么行!
· DeepSeek 解答了困扰我五年的技术问题。时代确实变了!
· 趁着过年的时候手搓了一个低代码框架
· 推荐一个DeepSeek 大模型的免费 API 项目!兼容OpenAI接口!