Winserver+Apache+django部署

废话不多说,干货直接上。

winserver2012 + django2.0.1 + apache 部署过程

1 ,python ==> 3.4 64位 https://www.python.org/downloads/release/python-353/

2 ,django ==> 2.0.1 64位

3 ,apache ==> 2.2.4 64位 https://www.apachehaus.com/cgi-bin/download.plx

vc 下载链接:   https://support.microsoft.com/zh-cn/help/2977003/the-latest-supported-visual-c-downloads

mod_wsgi

1 , pip install mod_wsgi and http://www.lfd.uci.edu/~gohlke/pythonlibs/#mod_wsgi

安装微软SDK7.1 or vs2010-2018 pip install mod_wsgi需要依赖编译

http://www.lfd.uci.edu/~gohlke/pythonlibs/#mod_wsgi 下载:mod_wsgi‑4.5.24+ap24vc10‑cp34‑cp34m‑win_amd64.whl

以上环境安装完成之后,mod_wsgi.whl文件下载完成之后,放在C盘根目录下,


打开终端,进入C盘根目录,

1, pip install "mod_wsgi‑4.5.24+ap24vc10‑cp34‑cp34m‑win_amd64.whl"


pip完成之后,紧接着输入: mod_wsgi-express module-config

输出结果:
    1: LoadFile "c:/users/administrator/appdata/local/programs/python/python35/python35.dll"


    2: LoadModule wsgi_module "c:/users/administrator/envs/mode_env/lib/site-packages/mod_wsgi/server/mod_wsgi.cp35-win_amd64.pyd"


    3: WSGIPythonHome "c:/python34"

之后配置apache

进入apache目录==>bin修改httpd.conf文件

1: Define SRVROOT "C:/pyobj/apache24/apache24"

2: 设置监听得端口号前提端口必须开放 80
Listen 0.0.0.0:80

3:设置服务器地址
ServerName ***.***.***.***:80

4:在最底部添加如下配置


LoadModule wsgi_module "c:/users/administrator/envs/mode_env/lib/site-packages/mod_wsgi/server/mod_wsgi.cp35-win_amd64.pyd"


WSGIPythonHome "c:/users/administrator/envs/mode_env" == >python地址

# django项目中得wsgi.py 路径 (绝对路径)


WSGIScriptAlias / C:/pyobj/Apachedemo/Apachedemo/wsgi.py


# django项目路径


WSGIPythonPath C:/pyobj/Apachedemo


# 配置wsgi权限
<Directory C:/pyobj/Apachedemo/Apachedemo>
<Files wsgi.py>
Require all granted
</Files>
</Directory>

配置完成之后打开终端进入apache/bin目录

将apache添加为系统服务

httpd -k install

# 启动服务
httpd -k start

# 停止
httpd -k stop

# 重启
httpd -k restart

如果运行报错403, 就是apache权限问题, 
500, uwsgi错误, 就需要在wsgi文件添加       sys.append('项目路径根目录')

然后项目根目录都添加   __init__.py 文件


安装过程中,如果机器是64位,以上安装包全部都得是64为,不可以64/32混用。

原文地址:https://www.cnblogs.com/wuyongcong/p/8711643.html