django+nginx环境部署-创新互联

一 环境介绍

python:3.7.2
django:2.1.7
nginx:1.5.5
项目名:proj_foo

成都创新互联是一家专注于成都做网站、网站制作与策划设计,浉河网站建设哪家好?成都创新互联做网站,专注于网站建设10余年,网设计领域的专业建站公司;建站业务涵盖:浉河等地区。浉河做网站价格咨询:028-86922220

二 部署

django.contrib.staticfiles体统便利的管理命令,用户手机各app中收集静态文件

2.1 将STATIC_ROOT设置为静态文件存储目录

在修改项目配置文件proj_foo/settings.py
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR,'/static/')

STATICFILES_DIRS = (
os.path.join(BASE_DIR, 'static'),
'/var/www/html/littlebear/static/'
)

MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
MEDIA_URL = '/media/'

2.2 配置proj_foo/urls.py

在文件开头添加一下配置
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
from django.contrib import staticfiles
设置路由
urlpatterns = [
......
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

urlpatterns += staticfiles_urlpatterns()

2.3 收集静态文件

通以下命令可将各个app的静态文件收集至STATIC_ROOT存储目录中
python manage.py collectstatic

三 nginx配置

在nginx的配置文件中添加server配置段
upstream django_lb {
server 127.0.0.1:8000;
}
server {
listen 0.0.0.0:80;
charset utf-8;

    location /^media/ {
        alias /var/www/html/littlebear/media/;
    }
    location /^static/ {
        alias /var/www/html/littlebear/static/;
    }
    location / {
        include uwsgi_params;
        uwsgi_pass django_lb;
    }

    error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
}

重启nginx服务使配置生效

四 django项目运行

4.1 安装uwsgi

pip install uwsgi

4.2 使用uwsgi启动django项目

uwsgi \
--socket 0.0.0.0:8000 \ # 设置默认监听端口
--chdir /var/www/html/proj_foo \ #项目所在目录
--wsgi-file proj_foo/wsgi.py \ # wsgi配置文件
--master \ # 启用master
--processes 1 \ # 启用进程数
--threads 2 \ # 启用线程数
--stats 127.0.0.1:9191 # uwsgi监听状态端口

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


网站题目:django+nginx环境部署-创新互联
分享网址:http://scjbc.cn/article/dhjcec.html

其他资讯