【超详细,亲测有效】Windows Apache部署 Python Django运行环境

一、准备工作

配置环境:

1.Python版本3.8 32位

2.服务器平台:win 2018服务器系统 64位

3.django版本3.2.2/4.0

需要准备的软件

python-3.8.2(32bit).exe

mod_wsgi-4.9.1-cp38-cp38-win32.whl

httpd-2.4.54-win32-VS16.zip

Microsoft Visual C++ 2015-2019 x86_x64.zip (安装apache使用)

注:需要在环境变量中维护path和新增pythonhome变量(根据实际路径填写)。

变量名:PATH

变量值:D:\Program\Python\Python38-32\Scripts\;D:\Program\Python\Python38-32\;C:\Apache24\bin;

变量名:PYTHONHOME

变量值:D:\Program\Python\Python38-32

所需软件可以到下面链接下载

WindowsApache部署PythonDjango运行环境所需软件包-WindowsServer文档类资源-CSDN下载

二.Apache下载与配置

1.进入Apache官网,http://httpd.apache.org/下载对应版本,依次按照下面图片找到版本下载列表:

在这里插入图片描述
在这里插入图片描述

选个自己喜欢的版本下载就可以了,我下载的VC15,然后你会得到一个压缩文件,解压它,你会得到一个文件夹,我们的目标Apache24,至此,Apache就下载好了
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

到这里就可以下载相应的版本了,我选择的是Apache2.4 VC14 64为版本(根据需求选择

2.下载后是一个压缩文件,直接解压缩,获取文件夹里的Apache24文件夹,这个文件夹就是apache服务器文件了,不需要安装,直接将Apache24文件夹移动到你想放的位置。

我这里直接将apache24移动到C盘根目录:


三、安装mod_wsgi

安装mod_wsgi到python环境中,我们会在配置apache的config文件时用到它

mod_wsgi下载地址:http://www.lfd.uci.edu/~gohlke/pythonlibs/#mod_wsgi

在这里选择合适的版本进行下载,ap24代表apache的版本号+cp后面对应python版本+amd后面对应操作系统(32/64位)

然后将它安装到python环境中。

1. 安装方法一:此处直接将该whl文件解压后复制到python路径下的script文件夹下 
2. 安装方法二(推荐):在存放该whl文件的目录下,打开cmd,运行命令  pip3 install mod_wsgi-4.9.1-cp38-cp38-win32.whl

 

获取python配置信息

mod_wsqi安装成功后, cmd 命令行输入输入:
mod_wsgi-express module-config
得到以下信息(复制信息用于下面备用),mod_wsgi安装结束


四、Apache相关配置


打开Apache24 目录,找到conf目录下的httpd.conf,打开后,依次配置以下信息:

 如下图配置httpd.conf文件

 

Define SRVROOT "c:/Apache24"

ServerRoot "${SRVROOT}"


#添加mod_wsgi,这三行是安装mod_wsgi命令行中显示出来的
 
LoadFile "C:/Users/Administrator/AppData/Local/Programs/Python/Python38-32/python38.dll"
LoadModule wsgi_module "C:/Users/Administrator/AppData/Local/Programs/Python/Python38-32/lib/site-packages/mod_wsgi/server/mod_wsgi.cp38-win32.pyd"
WSGIPythonHome "C:/Users/Administrator/AppData/Local/Programs/Python/Python38-32"
WSGIApplicationGroup %{GLOBAL}

#设置wsgi.py文件路径
WSGIScriptAlias / C:/pythonproject/djangoProject_pro/djangoProject/wsgi.py
 
#指定项目目录,即你的Django项目路径
WSGIPythonPath C:/pythonproject/djangoProject_pro
<Directory C:/pythonproject/djangoProject_pro/djangoProject>
<Files wsgi.py>
    Require all granted
</Files>
</Directory>



# 设置静态和媒体文件路径
Alias /static C:/pythonproject/djangoProject_pro/djangoProject/static
<Directory C:/pythonproject/djangoProject_pro/djangoProject/static> 
    AllowOverride None 
    Options None 
    Require all granted 
</Directory>
 
 
Listen 86**
ServerName 9.**.**.91:86**

 五、wsgi文件配置

import logging
import os,sys
from django.core.wsgi import get_wsgi_application

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
sys.path.append(BASE_DIR)
logging.captureWarnings(True)
os.environ['DJANGO_SETTINGS_MODULE'] = 'djangoProject.settings'
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "djangoProject.settings")



application = get_wsgi_application()

六、在windows中启用Apache服务,新建项目

在apache/bin的目录下,打开运行程序(输入cmd回车)

输入如下名(djangoProject为httpd.conf中配置的项目名称)

httpd.exe -k install -n "djangoProject"  

你会在电脑右下角发现多了一个图标
 

 

启动项目即可

 

 至此就完全搭建好了(下面页面是我自己设置的页面找不到时弹出页)

=======上述的配置+注意的2条说明就可以搭建成功==========

  1. 很多文章要求增加static静态文件夹配置,但是实际影响不大,除非有需要。
  2. Wsgi.py文件不能用默认生成的,因为apache按照默认配置找不到setting.py的路径,因此需要做下调整,将路径明确下才可以取到,下面是关键。

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

sys.path.append(BASE_DIR)

os.environ['DJANGO_SETTINGS_MODULE'] = '项目名.settings'

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "项目名.settings")

============下面的是参考的博主文章内容================
版权声明:本文为CSDN博主「Panda_813」
原文链接:https://blog.csdn.net/panda_813/article/details/88575852
版权声明:本文为CSDN博主「凡尘雪」
原文链接:https://blog.csdn.net/weixin_41927957/article/details/85335788

  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
部署 Django 通常可以分为以下步骤: 1. 在服务器上安装 Python 和相关依赖库。 2. 安装 Web 服务器软件,如 Apache 或 Nginx。 3. 配置 Web 服务器,使其能够代理请求到 Django 应用程序。 4. 部署 Django 应用程序,包括配置数据库、静态文件、媒体文件等。 以下是一个简单的部署流程示例: 1. 在服务器上安装 Python 和相关依赖库。 ```shell sudo apt-get update sudo apt-get install python3 python3-pip python3-venv ``` 2. 安装 Web 服务器软件,如 Apache 或 Nginx。 ```shell sudo apt-get install apache2 ``` 3. 配置 Web 服务器,使其能够代理请求到 Django 应用程序。 对于 Apache,可以使用 mod_wsgi 模块。安装 mod_wsgi: ```shell sudo apt-get install libapache2-mod-wsgi-py3 ``` 然后在 Apache 的配置文件中添加以下内容: ```apache <VirtualHost *:80> ServerName example.com WSGIDaemonProcess mysite python-home=/path/to/venv WSGIProcessGroup mysite WSGIScriptAlias / /path/to/mysite/wsgi.py <Directory /path/to/mysite> Require all granted </Directory> Alias /static /path/to/static/files <Directory /path/to/static/files> Require all granted </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost> ``` 其中,`example.com` 是你的域名或 IP 地址,`/path/to/venv` 是你的 Python 虚拟环境路径,`/path/to/mysite` 是你的 Django 项目路径,`/path/to/static/files` 是你的静态文件路径。 4. 部署 Django 应用程序,包括配置数据库、静态文件、媒体文件等。 在 Django 的配置文件中,设置 `DEBUG = False`,并配置数据库、静态文件、媒体文件等路径。然后使用 `collectstatic` 命令收集静态文件: ```shell python manage.py collectstatic ``` 最后重启 Web 服务器即可: ```shell sudo systemctl restart apache2 ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值