应实际需求,特记于此,以备忘
环境:
- Windows Server 2012
- Apache 2.4
- python 3.6
- Django 1.11
- mysql 5.7
1. 安装所需环境
2. 配置Apache
进入C:\Apache24\conf
这是Apache服务气的配置文件夹,修改httpd.conf
文件,使用VSCode打开,Ctrl+f 搜索Define SRVROOT
,并修改项目配置
Define SRVROOT "C:\Apache24" #Apache24文件的路径,其余不用改。
ServerRoot "${SRVROOT}"
Listen IP:PORT #需要部署到服务器的ip和端口号
ServerName IP:PORT #需要部署到服务器的ip和端口号
3. 创建Apache服务
进入C:\Apache24\bin
目录,使用管理员身份运行cmd命令行,输入以下代码:
httpd.exe -k install -n "apache2.4" # -n参数给服务起别名,apache2.4是所创建服务器名称,也可不写,使用默认的。
出现successfully installed,安装成功
打开浏览器输入对应的ip,看到Apache欢迎页面,启动完成
4. 安装mod_wsgi
mod_wsgi的目标是实现一个简单的Apache模块,支持任何Python WSGI的接口的Python应用程序的托管。该模块适用于高性能生产的WEB站点,同时也适用于自己维护站点的WEB 服务托管(虚拟主机环境–译者注)。
下载地址 版本说明:
ap24vc14 表示Apache2.4VC14
版本,cp36表示python3.6,amd64表示64位
[外链图片转存失败(img-SYN6npjZ-1566094976202)(/images/article_image/2019.09/mod_wsgi.png)]
注意:下载对应版本要匹配
下载之后:
pip3 install "mod_wsgi-4.5.24+ap24vc14-cp36-cp36m-win_amd64.whl"
安装成功之后:
mod_wsgi-express module-config
可以得到相关环境的安装地址:
LoadFile "c:/users/my/appdata/local/programs/python/python36/python36.dll"
LoadModule wsgi_module "c:/users/my/appdata/local/programs/python/python36/lib/site-packages/mod_wsgi/server/mod_wsgi.cp36-win_amd64.pyd"
WSGIPythonHome "c:/users/my/appdata/local/programs/python/python36"
5. 配置Django项目
打开httpd.conf,在该文件末尾加入以下内容(也可以使用Include进行引入,任选其一即可):
LoadFile "c:/users/my/appdata/local/programs/python/python36/python36.dll"
LoadModule wsgi_module "c:/users/my/appdata/local/programs/python/python36/lib/site-packages/mod_wsgi/server/mod_wsgi.cp36-win_amd64.pyd"
WSGIPythonHome "c:/users/my/appdata/local/programs/python/python36"
#设置工程中的wsgi路径
WSGIScriptAlias / C:\Apache24\sites\yikuang\yikuang\wsgi.py
#设置工程路径
WSGIPythonPath C:\Apache24\sites\yikuang\yikuang
#设置wsgi路径
<Directory C:\Apache24\sites\yikuang\yikuang\wsgi.py>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
#设置静态文件路径
Alias /static C:\Apache24\sites\yikuang\yikuang\static
<Directory C:\Apache24\sites\yikuang\yikuang\static>
AllowOverride None
Options None
Require all granted
</Directory>
使用Include引入的方式:
Include sites/yikuang/yikuang.conf # 此方式将上面的代码不再追加到httpd.conf中,另外创建配置文件,并写入
6. 重启服务
httpd.exe -k restart
7. 测试是否成功
打开浏览器,输入正确的IP及端口号, 部署成功!
参考:https://blog.youkuaiyun.com/weiyuanke/article/details/7696670
公众号:一丁点技术