Windows上Python3.6环境django部署到Apache服务器

来源:互联网 发布:高级sql生成选项 编辑:程序博客网 时间:2024/05/22 14:50

最近在部署一个django项目到Apache服务器上遇到了不少问题现整理个完整流程

1.准备工作

python版本:python3.6.1 64位

django版本:django 1.11.2

Apache版本:2.4.26 64位

2.安装Apache

apache官方网站http://httpd.apache.org/

根据自己的环境选择相应的版本进行下载

把下载后的安装包解压到安装路径修改conf/httpd.conf文件:

Define SRVROOT "/Apache24"  #把此处改为安装路径如Define SRVROOT "D:\Program Files\Apache24"ServerRoot "${SRVROOT}"

启动bin/httpd.exe程序如没有任何输出则配置成功

通过浏览器访问locahost

3.安装mod_wsgi

1.下载mod_wsgi Python的插件 http://www.lfd.uci.edu/~gohlke/pythonlibs/#mod_wsgi


如 mod_wsgi‑4.5.15+ap24vc14‑cp36‑cp36m‑win_amd64.whl

  i. 这个插件对应的Apache版本是24 VC是14

 ii. Python版本是3.6

  iii. 64位系统

在下载时要选择相应的版本,否则Apache启动时会有问题

2. 下载后后缀名改为.zip进行解压,但是解压后找不到mod_wsgi.so文件

3.把下载的.whl文件复制到python\Scripts下使用

pip3 install "mod_wsgi-4.5.15+ap24vc14-cp36-cp36m-win_amd64.whl"
进行安装在安装成功后在python的安装目录的\scripts文件夹下运行
mod_wsgi-express module-config
输出如下三行结果

把这三行内容复制到http.cnf文件下进行配置

LoadFile "d:/program files/python36/python36.dll"LoadModule wsgi_module "d:/program files/python36/lib/site-packages/mod_wsgi/server/mod_wsgi.cp36-win_amd64.pyd"WSGIPythonHome "d:/program files/python36"

再次启动服务器即可

4.配置Apache和django项目

#mod_wsgi设置LoadFile "d:/program files/python36/python36.dll"LoadModule wsgi_module "d:/program files/python36/lib/site-packages/mod_wsgi/server/mod_wsgi.cp36-win_amd64.pyd"WSGIPythonHome "d:/program files/python36"#指定website的wsgi.py配置文件路径WSGIScriptAlias / E:/Python/website/web/wsgi.py#指定项目路径WSGIPythonPath  E:/Python/website<Directory E:/Python/website><Files wsgi.py>    Require all granted</Files></Directory>

再次启动Apache24/bin/httpd.exe程序即可