Ubuntu   发布时间:2022-05-10  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Ubuntu16.04 部署Django1.10 apache2.4 mod_wsgi大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

Ubuntu16.04默认是装有python3.5的,先安装pip

sudo apt-get install python3-pip

接着安装venv

sudo apt-get install python3-venv

安装apache2

sudo apt-get install apache2

安装mod_wsgi

sudo apt-get install libapache2-mod-wsgi-py3

在/var目录中创建DjangoWeb文件夹,然后在当前目录创建venv

python3 -m venv venv

把之前开发的Django程序拷贝过去,开发环境如果和部署环境一样的话,可以直接把开发环境的sit-packages下载的包直接拷贝过去。
在/etc/apache2/sites-available目录下创建djangoWeb.conf文件

<VirtualHost *:80>  
    ServerName www.software.com
    ServerAlias software.com
    ServerAdmin huangle63@163.com
    DocumentRoot /var/DjangoWeb

    Alias /favicon.ico /var/DjangoWeb/djangoWeb/static/img/favicon.ico

    Alias /static/ /var/DjangoWeb/djangoWeb/static/
    <Directory /var/DjangoWeb/djangoWeb/static>
        Options All
        AllowOverride All
        require all granted
    </Directory>

    WsgiScriptAlias / /var/DjangoWeb/djangoWeb/wsgi.py
    <Directory /var/DjangoWeb/djangoWeb>
        <Files wsgi.py>
            require all granted
        </Files>
    </Directory>

    <Directory />
        Options All
        AllowOverride All
        require all granted
    </Directory>
</VirtualHost>

修改Django项目中的wsgi.py文件

""" Wsgi config for djangoWeb project. It exposes the Wsgi callable as a module-level variable named ``application``. For more @R_782_4036@ion on this file,see https://docs.djangoproject.com/en/1.10/howto/deployment/wsgi/ """

import os,sys
from os.path import join,dirname,abspath

os.environ["DJANGO_SETTinGS_MODULE"] = "djangoWeb.setTings"

sys.path.append('/var/DjangoWeb/venv/lib/python3.5/site-packages')

PROjeCT_DIR = dirname(dirname(abspath(__file__)))
if PROjeCT_DIR not in sys.path:
    sys.path.insert(0,PROjeCT_DIR)

from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()

启动apache2服务

/etc/init.d/apache2 start

使配置文件djangoWeb.conf生效

sudo a2ensite djangoWeb.conf

使默认配置文件失效(否则局域网内其他电脑不能通过IP地址访问)

sudo a2dissite 000-default.conf

重启Apache

sudo /etc/init.d/apache2 restart

修改hosts文件
修改/etc下hosts文件,添加127.0.0.1 www.software.com

在setTing.py中加入i自己允许的域名或者ip地址(这个地方切记加入自己的域名否则会报错

ALLOWED_HOSTS = ['127.0.0.1','localhost',‘yourip_OR_domain’]

重启Apache服务器

sudo /etc/init.d/apache2 restart

验证配置
在浏览器中输入192.168.62.128(即本机IP地址)或者www.software.com都能显示Django的It works!页面

服务器出错的话,一定要多看看apache2的err log
命令行输入:

tail /var/log/apache2/error.log

官方文档
https://docs.djangoproject.com/en/1.10/howto/deployment/wsgi/modwsgi/

大佬总结

以上是大佬教程为你收集整理的Ubuntu16.04 部署Django1.10 apache2.4 mod_wsgi全部内容,希望文章能够帮你解决Ubuntu16.04 部署Django1.10 apache2.4 mod_wsgi所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: