windows环境下Apahce部署Django项目
环境:
Django——3.0.6
Python——3.7.9
Apache——2.4.47
mod_wsgi——mod_wsgi-4.7.1-cp37-cp37m-win_amd64.whl
windows 64位
一、 安装Apache
-
下载安装Apache
进入官网安装Apache Windows版本,根据系统版本选择,这里选择的x64的。
-
解压Apache
下载完成后解压至要部署的路径下。路径注意使用全英文。
-
配置conf文件
进入conf文件夹下,编辑httpd.conf文件。
Apache路径改为你解压的Apache的绝对路径
端口监听修改为一个未占用的端口,这里我修改的是8081
ServerName 改为localhost:8081
修改完成后保存,双击运行bin目录下的httpd.exe,然后在浏览器输入127.0.0.1:8081,出现下面的页面就配置成功。
二、 安装mod_wsgi
-
下载mod_wsgi
前往官网链接下载mod_wsgi,选择适配自己的版本,我这里下载的是4.8.8_cp37的。
-
安装mod_wsgi
在mod_wsgi路径里,用管理员权限打开命令行窗口,执行
pip instller mod_wsgi-4.7.1-cp37-cp37m-win_amd64.whl
安装完成后,执行 mod_wsgi-express module-config
将所提示路径复制保存,这个是要添加到Apache的配置文件中的。
三、 迁移Django项目
- 迁移Django项目
将Django项目迁移至你想存放的路径内,或者放在Apache同级目录下。 - 在.conf文件中配置Django信息
将图中所示信息添加至.conf文件,然后保存,路径务必写对,不然那Apache会报错。
3. 配置settings.py
打开Django项目中的settings文件,将DEBUG设置为False,ALLOWED_HOSTS = [‘*’],ALLOWED_HOSTS列表为了防止黑客入侵,只允许列表中的IP地址访问,这里我设置为通配符表示允许所有地址访问。
4. 安装启动Apache服务
使用管理员权限打开命令行窗口,进入Apache的bin目录下,使用 httpd.exe -k install -n ‘服务名’来注册服务,也可以使用httpd.exe -k uninstall -n ‘服务名’来卸载已经安装的服务,服务注册成功后,执行
httpd.exe -k start -n 服务名,来启动服务。
这个时候打开浏览器测试是否能正常进入Django项目页面。
5. 采坑
① 端口一定要选择不被占用的,不然会报错。
② 有时会提示443端口被占用,需要conf/extra路径下修改httpd-ahssl.conf中443端口为一个不被占用的端口号。
③ 如果调用excel的话,需要给excel增加权限。