商务合作加Q:411239339

Windows下部署django 4.0.5

浏览:512次阅读
没有评论

共计 2595 个字符,预计需要花费 7 分钟才能阅读完成。

1. 环境说明

使用 apache 2.4 模块中的 mod_proxy_uwsgi 作为跟 django 通讯的模块。

XAMPP:v3.3.0
Python:3.8
Django:4.0.5
MySQL:5.7.27
OS:Windows Server 2012
Apache:2.4.x

项目代码存放路径:C:\mysite

2、配置 python 环境

使用 virtualenv 安装虚拟环境这里就不多说了,自行百度一下。

安装 mod_wsgi 环境,访问:https://www.lfd.uci.edu/~gohlke/pythonlibs/#mod_wsgi

Windows 下部署 django 4.0.5

安装一下:

pip install C:\mod_wsgi-4.9.2-cp38-cp38-win_amd64.whl
c:\mysite>mod_wsgi-express module-config

输出如下信息:

LoadFile "c:/python38/python38.dll"
LoadModule wsgi_module "c:/python38/lib/site-packages/mod_wsgi/server/mod_wsgi.cp38-win_amd64.pyd"
WSGIPythonHome "c:/python38"

以上配置待会将拷贝到 httpd-vhost.conf 文件中去。

3. 配置 Apache

将 mod_proxy_uwsgi 模块放出来,去掉前面的 #

#LoadModule proxy_scgi_module modules/mod_proxy_scgi.so
LoadModule proxy_uwsgi_module modules/mod_proxy_uwsgi.so
#LoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel.so

配置 httpd-vhost.conf:

# Virtual Hosts
#
# Required modules: mod_log_config

# If you want to maintain multiple domains/hostnames on your
# machine you can setup VirtualHost containers for them. Most configurations
# use only name-based virtual hosts so the server doesn't need to worry about
# IP addresses. This is indicated by the asterisks in the directives below.
#
# Please see the documentation at
# <URL:http://httpd.apache.org/docs/2.4/vhosts/>
# for further details before you try to setup virtual hosts.
#
# You may use the command line option '-S' to verify your virtual host
# configuration.

LoadFile "c:/python38/python38.dll"
LoadModule wsgi_module "c:/python38/lib/site-packages/mod_wsgi/server/mod_wsgi.cp38-win_amd64.pyd"
WSGIPythonHome "c:/python38"

#
# Use name-based virtual hosting.
#
NameVirtualHost *:80
Listen 80
#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for all requests that do not
# match a ##ServerName or ##ServerAlias in any <VirtualHost> block.
#
##<VirtualHost *:80>
    ##ServerAdmin webmaster@dummy-host.example.com
    ##DocumentRoot "C:/xampp/htdocs/dummy-host.example.com"
    ##ServerName dummy-host.example.com
    ##ServerAlias www.dummy-host.example.com
    ##ErrorLog "logs/dummy-host.example.com-error.log"
    ##CustomLog "logs/dummy-host.example.com-access.log" common
##</VirtualHost>

##<VirtualHost *:80>
    ##ServerAdmin webmaster@dummy-host2.example.com
    ##DocumentRoot "C:/xampp/htdocs/dummy-host2.example.com"
    ##ServerName dummy-host2.example.com
    ##ErrorLog "logs/dummy-host2.example.com-error.log"
    ##CustomLog "logs/dummy-host2.example.com-access.log" common
##</VirtualHost>


#设置 django 工程中的 wsgi 路径
WSGIScriptAlias / C:\mysite\mysite\wsgi.py

#设置 django 工程路径
WSGIPythonPath C:\mysite

#设置 wsgi 的文件夹路径
<Directory C:\mysite\mysite>
   <Files wsgi.py>
       Require all granted
    </Files>
</Directory>

#设置静态文件路径
Alias /static C:\mysite\static
<Directory C:\mysite\static>
   AllowOverride None
   Options None
   Require all granted
</Directory>

最后重启下 apache 服务即可完成!以下即访问效果:
Windows 下部署 django 4.0.5

正文完
扫码赞助
post-qrcode
 0
果子
版权声明:本站原创文章,由 果子 于2022-08-30发表,共计2595字。
转载说明:除特殊说明外本站文章皆由果较瘦原创发布,转载请注明出处。