前言:这篇主要是流程,不喜勿喷,虽然我知道在部署过程中 参照博客写的越详细越好。 强大的百度会解决一切的

爬了诸多坑 ,心累,必须总结!!

最近 芯片封锁闹的很凶  支持国产!!

UOS 统一操作系统 前身 深度  arm 架构 (国产)

开始安装(这里全部基于源码安装(手动安装)的方式)

1、安装nginx依赖包

  ssl 功能 需要安装Openssl   网址:https://www.openssl.org/source/

  gzip库需要 安装zlib               网址:http://www.zlib.net/zlib-1.2.11.tar.xz

  rewrite模块需要 pcre 库      网址:https://ftp.pcre.org/pub/pcre/

  源码安装步骤:(这里不演示)

  1. tar -zxvf  ***.tar.gz

  2. cd ***

  3.  ./configure

  4.make

  5.sudo make install

  小结:    1.      三个依赖包都是这样安装

      2.     3-5步容易出坑  耐心点 复制错误到百度 你会得到你想要的

2、 安装nginx

  奉上下载连接:https://nginx.org/download/nginx-1.16.1.tar.gz

  安装方式: 参见上面 源码安装

       相信我 你会出错 在第三小步 第四小步(如果没有 你可能是天选之子)还是那句话 复制错误到百度 你会解决的

  配置环境变量: 

       这里希望记住 (既然你选择linux)配置环境变量的文件 /etc/profile

        1. nginx 安装之后的路径 :/usr/local/nginx/sbin/ 

        2. sudo vim /etc/profile

        3. 在尾行添加  export  PATH=$PATH:/usr/local/nginx/sbin

        4. 配置完成 使用source  /etc/profile

           5.  在终端 敲下 nginx  如果  未找到命令   (在确保没写错 路径的情况下,重启试试)

  在终端输入 nginx-t

      又有错误吧  不慌! 可能是权限原因 ,观察报错信息 找到文件 修改权限(sudo chmod 755  文件)如果不是 :百度!

3、安装uwsgi

    python3.7 -m  pip install uwsgi

4、相信django就不用我介绍了吧

  关键的点:

        settings .py

          ALLOWED_HOSTS = ['*',]

          DEBUG = False

          STATIC_ROOT='api/static' (这个路径决定你  python3.7 manage.py collectstatic  生成的静态文件夹路径    什么?你不知道collectstatic是干什么的?请看下文)

        python3.7 manage.py collectstatic

          你会得到一个文件夹 路径是 settings中 STATIC_ROOT 的路径,这个静态资源 后续会在nginx中引用  可以理解为 独立于django

至此  环境 都安装完成 !!

配置uwsgi

   uwsgi --http :8888 --module eduonline.wsgi  执行它 看看 uwsgi是否正常

  真正的配置 manga.py 的同级创建 一个 uwsgi.ini 文件

  打开它   配置如下内容  千万不要 把注释写到 代码后面 否则 你会发现 错误是因为什么

[uwsgi]
# 应用服务IP
socket=0.0.0.0:8000
# 项目根目录
chdir=/home/api
wsgi-file=api/wsgi.py
# 指定wsgi模块,与nginx连接使用
module=api.wsgi
# web服务IP端口
#http = 0.0.0.0:9000
# 开启主进程管理模式
master=true
# 进程数
processes=4
# 每个进程的线程个数
threads=2
pidfile=/home/api/api/uwsgi.pid
# 日志文件一般会自动创建
daemonize=/home/api/api/uwsgi.log
# 不记录正常信息,只记录错误信息
#disable-logging=true

  这么多参数 我怎么知道什么意思   请输入 uwsgi -h

  执行 uwsgi --ini uwsgi 启动uwsgi 就用这个命令  因为什么都配置好了  呓? 什么没有说呀  请看uwsgi.ini   daemonize找到这个文件

配置nginx

  1. cd /usr/local/nginx/conf/

  2. sudo vim nginx.conf

  3.

server {
listen 8080;
server_name www.baixin.com; # 可以在hosts的文件里添加 DNS #charset koi8-r; #access_log logs/host.access.log main; location / {
include uwsgi_params;
uwsgi_pass 127.0.0.1:8000;
}
location /static {
alias /home/baixin/Desktop/vs_python/prue_projects/api/api/static; # python3.7 manage.py collectstatic 生成的static
}

  4. 重启 nginx -s reload

  5. 浏览器 开网页

附:

  日志很重要:nginx 日志 : /usr/local/nginx/log/

        uwsgi日志:     uwsgi.ini 配置的 daemonize

        django的日志 :配置一个很重要

            奉上简易版:

 # 日志配置
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'handlers': {
'file': {
'level': 'DEBUG',
'class': 'logging.FileHandler',
'filename': './logs/api_debug.log',
},
},
'loggers': {
'django': {
'handlers': ['file'],
'level': 'DEBUG',
'propagate': True,
},
},
}

在UOS 上部署 django + uwsgi + nginx 流程的更多相关文章

  1. [linux]centos7.4部署django+Uwsgi+Nginx

    前言:我已经写了几个接口用来部署在服务器上的,首先选择django+Uwsgi+Nginx因为配置简单,比较符合python的简单操作功能强大的特点 然后对于django的一些版本在之前的文章写了 参 ...

  2. Centos 7 下部署Django + uWSGI + Nginx

    1.废话 之前利用Django写了些测试工具,一直是直接 python manage.py runserver 8081这么来用的.用户量不大,倒也不影响什么.uWSGI+Nginx的性能肯定要好,s ...

  3. Ubuntu环境下部署Django+uwsgi+nginx总结

    前言 这是我在搭建Django项目时候的过程,拿来总结记录,以备不时之需. 项目采用nginx+uwsgi的搭配方式. 项目依赖包采用requirements.txt文件管理的方式. 本地准备工作 确 ...

  4. 学习项目部署Django+uwsgi+Nginx生产环境部署

    绪论 项目生产环境部署,是很重的一个知识点.第一,Django自带的服务器很简陋,由于测试和开发环境尚可,无法用于生产环境,保障安全性和可靠性.以及性能.此外,学习部署方式,还有利于了解生产部署后的项 ...

  5. django+uWSGI+nginx的工作原理流程与部署过程

    django+uWSGI+nginx的工作原理流程与部署过程 一.前言 知识的分享,不应该只是展示出来,还应该解释这样做是为什么... 献给和我一样懵懂中不断汲取知识,进步的人们. 授人与鱼,不如授人 ...

  6. CentOS上部署Django+Nginx+Uwsgi环境

    在CentOS上部署Django+Nginx+Uwsgi环境 奇谭  2016-09-01 评论  Linux  python django nginx uwsgi VirtualEnv的作用:创建隔 ...

  7. Linux 集群概念 , wsgi , Nginx负载均衡实验 , 部署CRM(Django+uwsgi+nginx), 部署学城项目(vue+uwsgi+nginx)

    Linux 集群概念 , wsgi , Nginx负载均衡实验 , 部署CRM(Django+uwsgi+nginx), 部署学城项目(vue+uwsgi+nginx) 一丶集群和Nginx反向代理 ...

  8. 10: Django + Uwsgi + Nginx 的生产环境部署

    1.1 一些重要概念 1.Web协议介绍 Web协议出现顺序: CGI -> FCGI -> WSGI -> uwsgi 1. CGI:  最早的协议 2. FCGI:  比CGI快 ...

  9. Django Linux环境下部署CentOS7+Python3+Django+uWSGI+Nginx(含Nginx返回400问题处理、防火墙管理)

    本文将介绍如何在Linux系统上部署Django web项目,本次部署基于下面的架构: CentOS7+ Python3.5 + Django1.11 + uWSGI + Nginx 亲测可行!!按照 ...

随机推荐

  1. [开源硬件DIY] 自制一款精致炫酷的蓝牙土壤温湿度传感器,用于做盆栽呵护类产品(API开放,开发者可自行DIY微信小程序\安卓IOS应用)

    目录 前言: 1. 成品展示 2. 原理图解析 3. pcb设计 4. 嵌入式对外提供接口 4.1 蓝牙广播 4.2 蓝牙服务和属性 4.3 数据包格式 4.4 数据通信模型 重要 . 前言: 本期给 ...

  2. vue怎么自定义组件

    我们在搭建好的手脚架中 进行使用 一.在src =>components => 创建XXbtn文件夹用来存放你的组件 =>在创建一个vue的文件 . 二.在src => com ...

  3. EOJ Monthly 2019.11 A(进制转换)

    "欢迎您乘坐东方航空公司航班 MU5692 由银川前往上海......" "我们的飞机很快就要起飞了,请收起小桌板,摘下耳机......" 收起了小桌板,摘下了 ...

  4. jQuery中常用网页效果应用

    一.常用网页效果应用 1.表单应用 表单由表单标签.表单域和表单按钮组成. 1.1单行文本框应用 例:获取和失去焦点改变样式 首先,在网页中创建一个表单,HTML代码如下 <form actio ...

  5. C语言学习笔记一---C语言概述

    一.编程语言与解释语言 1.程序的执行 a.解释:借助一个能试图理解程序的程序,使计算机按要求执行你自己写的程序 b.编译:将所写程序翻译为机器语言写的程序,使计算机按要求执行你自己写的程序 2.两者 ...

  6. 深入浅出系列第一篇(设计模式之单一职责原则)——从纯小白到Java开发的坎坷经历

    各位看官大大们,晚上好.好久不见,我想死你们了... 先说说写这个系列文章的背景: 工作了这么久了,每天都忙着写业务,好久没有好好静下心来好好总结总结了.正好这段时间公司组织设计模式的分享分,所以我才 ...

  7. 常见的HTTP返回状态值

    200 (成功) 服务器已成功处理了请求. 通常,这表示服务器提供了请求的网页. 301 (永久移动) 请求的网页已永久移动到新位置. 服务器返回此响应(对 GET 或 HEAD 请求的响应)时,会自 ...

  8. Java线程池ThreadPoolExecutor面试总结思维导图速记

    优点 降低资源消耗,通过重复利用已创建的线程降低线程创建和销毁造成的消耗. 提高响应速度,当任务到达时,可以不需要等待线程创建就能立即执行. 提高线程的可管理性 类关系 接 Executor 一个无返 ...

  9. amazeui 验证按钮扩展

    做一个发送验证码按钮,点击后要60秒之后才能再次点击,利用原有的amazeui样式做的一些扩展,当然主题功能的代码全都是自己写的,也可以脱离amazeUi 自己完成这个功能按钮 代码如下: <! ...

  10. 修改git上传代码的作者姓名

    本文参考https://www.cnblogs.com/weiaiqi/p/11842515.html 随着IT行业的不断壮大,开源的东西越来越多,使用git来进行代码管理的人自然也越来越多,而且很多 ...