如何配置Apache服务器部署django项目
素材:apache2.4 django1.11.4 python3.6.3 系统windows 10
注意:下载各软件环境时,务必要保持一致都使用32位或者64位的版本。64位的系统也可以统一下载32位版本。
安装python
python 3.x版本,直接在官网下载安装即可,无需配置环境变量 https://www.python.org/downloads/
安装Apache2.4
从官网上下载Apache https://www.apachehaus.com/cgi-bin/download.plx 注意选择x64还是x86。
我选择的是httpd-2.4.43-lre312-x86-vc14.zip,下载完毕后解压到本地即可,C:\Apache2.4
配置Apache
打开服务器路径 C:\Apache24\conf 的httpd.conf文件
将内容修改如下
Define SRVROOT "C:/Apache24" #修改为服务器对应路径
ServerRoot "${SRVROOT}"
... ...
#Listen 127.0.0.1:80
Listen 8001 #监听端口,设置为没有被占用或者禁用的端口
... ...
ServerName 127.0.0.1:8001 #设置为本地地址
这样Apache服务器就设置完成。打开C:\Apache24\bin\httpd.exe
在浏览器键入127.0.0.1:8001. 出现以下界面表示配置成功
安装Mod_wsgi
网站上下载 Mod_wsgi https://www.lfd.uci.edu/~gohlke/pythonlibs/#mod_wsgi
注意下载版本要和Apache保持一致32位或者64位,否则下一步安装不能通过。 我当前下载版本 mod_wsgi-4.7.1-cp36-cp36m-win32.whl。
拷贝至本地后,在放置目录下打开控制台。
pip3 install mod_wsgi-4.7.1-cp36-cp36m-win32.whl
在控制台执行
mod_wsgi-express module-config 就可以查询模块的安装情况
配置Apache 和django
打开C:\Apache24\conf\httpd.conf
查询到的这段配置拷贝到末尾
... ...
LoadFile "c:/python/python36/python36.dll"
LoadModule wsgi_module "c:/python/python36/lib/site-packages/mod_wsgi/server/mod_wsgi.cp36-win32.pyd"
WSGIPythonHome "c:/python/python36"
WSGIScriptAlias / C:/Jobs/Project/HR/HRApp/backend/backend/wsgi.py #配置django的wsgi.py文件
WSGIPythonPath C:/Jobs/Project/HR/HRApp/backend #配置后台路径
<Directory C:/Jobs/Project/HR/HRApp/backend/backend>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
Alias /static C:/Jobs/Project/HR/HRApp/backend/frontend/static #配置静态文件
<Directory C:/Jobs/Project/HR/HRApp/backend/frontend/static> #配置静态文件
AllowOverride None
Options None
Require all granted
</Directory>
2.打开django项目setting配置:
DEBUG = False
ALLOWED_HOSTS = ['*']
运行服务器
在C:\Apache24\bin目录下以管理员权限打开控制台,运行cmd命令httpd -k install -n “服务名”
运行apache:net start apache2.4
停止apache:net stop apache2.4
删除apache:sc delete Apache2.4
运行ApacheMonitor.exe.
Click start 运行服务器
完成。