悠闲博客-blog.yxrjt.cn

Apache+mod_wsgi部署Django(已测)

更新时间:2025-11-22 08:58点击:70

1、安装apache和mod_wsgi

2、配置

    a、上传项目

    b、解压到apache的DocumentRoot所指定的目录,假定为:/usr/local/apache2/htdocs

    cd 到项目目录

    首先修改settings配置

    其次,在包含有manage.py的文件夹里运行

python manage.py syncdb # 创建数据表

pyhton manage.py collectstatic   # 搜集静态文件

    c、修改wsgi.py

import os,sys
 
sys.path.append(os.path.dirname(os.path.dirname(__file__)))
 
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "myproject1.settings")
os.environ['PYTHON_EGG_CACHE'] = '/tmp/.python-eggs'
 
from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()

    

d、修改httpd.conf

添加监听

Listen 8996

# Virtual hosts
Include /etc/httpd/extra/httpd-vhosts.conf   # 打开注释

打开cmd输入如下命令,将输出结果添加到配置文件中:

mod_wsgi-express module-config


将如上信息添加到httpd.conf文件中,再加上WSGIApplicationGroup %{GLOBAL}
LoadFile "D:/Python/Python39/python39.dll"
LoadModule wsgi_module "D:/Python/Python39/lib/site-packages/mod_wsgi/server/mod_wsgi.cp39-win_amd64.pyd"
WSGIPythonHome "D:/Python/Python39"
WSGIApplicationGroup %{GLOBAL}

再加上 django工程路径

# #设置django工程路径
WSGIPythonPath D:/FPWEB/myproject1

e、修改extra/httpd-vhosts.conf

<VirtualHost *:8996>
    ServerName localhost
    ServerAdmin xx@xx.com
 
    DocumentRoot D:/FPWEB/myproject1/
    WSGIScriptAlias / D:/FPWEB/myproject1/wsgi.py
   
    <Directory "D:/FPWEB/myproject1">
        Order allow,deny
        Allow from all
    </Directory>
 
    Alias /media "D:/FPWEB/myproject1/media"
    Alias /static "D:/FPWEB/myproject1/static"
 
    <Directory "D:/FPWEB/myproject1/static">
        Order deny,allow
        Allow from all
    </Directory>
 
    <Directory "D:/FPWEB/myproject1/media">
        Order deny,allow
        Allow from all
    </Directory>
</VirtualHost>
第二个
<VirtualHost *:8996>
    ServerName localhost
    ServerAdmin xx@xx.com
 
    DocumentRoot D:\Download\Apache24\htdocs\myblog
    WSGIScriptAlias / D:\Download\Apache24\htdocs\myblog\myblog\wsgi.py
   
    <Directory "D:\Download\Apache24\htdocs\myblog">
        Order allow,deny
        Allow from all
        <Files wsgi.py>
            Require all granted
        </Files>
    </Directory>
 
    Alias /media "D:\Download\Apache24\htdocs\myblog\myblog\media"
    Alias /static "D:\Download\Apache24\htdocs\myblog\myblog\static"
 
    <Directory "D:\Download\Apache24\htdocs\myblog\myblog\static">
        Order deny,allow
        Allow from all
    </Directory>
 
    <Directory "D:\Download\Apache24\htdocs\myblog\myblog\media">
        Order deny,allow
        Allow from all
    </Directory>
</VirtualHost>

www

栏目分类

联系方式
  • help@yxrjt.cn
  • lgc@yxrjt.cn
  • admin@yxrjt.cn