1、概念
    1、Django项目(Web应用)
    2、web服务
        1、nginx
        2、Apache
            LNMP -> Linux Nginx MySQL Python/PHP/Perl
            LAMP -> Linux Apache MySQL Python/PHP/Perl
        3、uwsgi
            是WEB服务器和WEB框架之间一种简单而通用的接口
2、单项目部署(nginx+uwsgi+Django)
    1、确保django项目能够运行
    2、安装nginx
        1、安装:sudo pip3 install nginx
        2、启动:sudo /etc/init.d/nginx restart
        3、验证:127.0.0.1:80
    3、安装uwsgi
        1、安装:sudo pip3 install uwsgi
        2、验证(用uwsgi直接启动django项目)
            uwsgi --http :9998 --chdir /home/tarena/myproject/fruit/ --module fruit.wsgi
    4、部署
        1、配置uwsgi(配置文件)
            1、mkdir uwsgi
            2、cd /home/tarena/uwsgi
            3、vi fruit_uwsgi.ini
                1、设置和nginx通信的端口
                    socket = 127.0.0.1:8001
                2、项目路径
                    chdir = /home/tarena/myproject/fruit
                3、wsgi.py路径
                    wsgi-file = fruit/wsgi.py
                4、进程数
                    processes = 4
                5、线程数
                    thread = 2
                6、本项目占用uwsgi端口
                    stats = 127.0.0.1:8081
        2、配置nginx(配置文件)
            1、sudo -i
            2、cd /etc/nginx/sites-enabled/
            3、vi project_nginx.conf
                server{
                        listen 8201;#浏览器访问项目的端口
                        server_name fruit.com;
                        charset utf-8;
                        client_max_body_size 75M;
                        location /static{
                            alias /home/tarena/myproject/fruit/static
                        }
                        # 和uwsgi进行通信,1、nginx下uwsgi_params文件 2,端口
                        location /{
                            include uwsgi_params;
                            uwsgi_pass 127.0.0.1:8001;
                        }

}
            4、拷贝uwsgi_params文件到项目目录
                sudo cp /etc/nginx/uwsgi_params /home/tarena/myproject/fruit
            5、重启nginx服务
                sudo /etc/init.d/nginx restart
        3、收集静态文件
            1、settings.py文件,添加路径
                STATIC_ROOT = '/home/tarena/myproject/fruit/static/'
            2、收集静态文件
                python3 manage.py collectstatic
        4、uwsgi启动项目
            uwsgi --ini fruit_uwsgi.ini
3、多项目部署
    1、uwsgi:每个项目需要单独创建uwsgi配置文件,选用不同端口
    2、nginx配置文件,1个就可以,添加server{}
        项目2:个人博客
            浏览器访问端口:8202 ,listen 8202
            uwsgi和nginx通信端口:8002,socket=127.0.0.1:8002
            uwsgi占用端口:8082

4、访问流程

nginx项目部署的更多相关文章

  1. Diango + uwsgi + nginx 项目部署(可外网访问)

    自己通过nginx uwsgi 部署django项目,查询了很多资料,遇到了很多问题,最终完成了部署,趁着心情愉悦,写个随笔,为曾像我一样苦寻解决方案的小伙伴们提供些思路. 安装Nginx: #安装n ...

  2. nginx 项目部署

    一.nginx 想必我们大多数人都是通过访问网站而开始接触互联网的吧.我们平时访问的网站服务 就是 Web 网络服务,一般是指允许用户通过浏览器访问到互联网中各种资源的服务. Web 网络服务是一种被 ...

  3. Nginx 项目部署和配置

    nginx 作为代理服务器,需要代理多个项目的话配置如下: server { listen       80; server_name  localhost; #charset koi8-r; #ac ...

  4. SpringBoot + Vue + nginx项目部署(零基础带你部署)

    一.环境.工具 jdk1.8 maven spring-boot idea VSVode vue 百度网盘(vue+springboot+nginx源码): 链接:https://pan.baidu. ...

  5. Django+Uwsgi+Nginx项目部署文档

    一.基本环境搭建 1)查看服务器 [root@Myjumpserver ~]# cat /etc/sysconfig/selinux SELINUX=disabled SELINUXTYPE=targ ...

  6. docker简单使用+django+uwsgi+nginx项目部署

    使用docker 搭建 centos7 环境: 主机环境:windows 10专业版 一.安装docker Hub.docker.com官网下载 docker for windows 安装完成后,任务 ...

  7. linux jdk+mysql+tomcat+nginx 项目部署步骤

    1.下载linux jdk1.7.0_79.tar.gz ; 下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-dow ...

  8. CentOS7.5下安装nginx --项目部署

    1.安装ngnix一些依赖包 [root@VM_39_157_centos ~]# yum -y install gcc gcc-c++ openssl-devel pcre-devel httpd- ...

  9. 在nginx上部署vue项目(history模式);

    在nginx上部署vue项目(history模式): vue-router 默认是hash模式,使用url的hash来模拟一个完整的url,当url改变的时候,页面不会重新加载.但是如果我们不想has ...

随机推荐

  1. Knative Serving 健康检查机制分析

    作者|  阿里云智能事业群技术专家牛秋霖(冬岛) 导读:从头开发一个Serverless引擎并不是一件容易的事情,今天咱们就从Knative的健康检查说起.通过健康检查这一个点来看看Serverles ...

  2. Windows 10 与 kali 双系统安装

    一.教程中用到的工具如下: 1.kali 2019镜像, 2.U盘 现在最低也有8G吧 3.软碟通 ,U盘刻录工具 4.win 10系统要留出一个空的硬盘,哪个盘的空间比较大可以压缩出大概100G的空 ...

  3. .NET进阶篇06-async异步、thread多线程1

    知识需要不断积累.总结和沉淀,思考和写作是成长的催化剂 异步多线程挺大一块内容,既想拆开慢慢学,又想一股脑全倒出.纠结再三,还是拆开吃透,也不至于篇幅过长,劝退许多人 本篇先做一个概述,列明一些基本概 ...

  4. python实现清屏

    往常都是用os.system("cls")清屏,但是发现每次执行完这个命令后都会出现一个空白字符 尝试了一下午,网上也没解决的办法 最后: os.system("cls& ...

  5. 常用的webpack优化方法

    1. 前言 关于webpack,相信现在的前端开发人员一定不会陌生,因为它已经成为前端开发人员必不可少的一项技能,它的官方介绍如下: webpack 是一个模块打包器.webpack的主要目标是将 J ...

  6. 深入理解计算机系统 第二章 信息的表示和处理 part2

      上一周遗留问题的解决 问题:原码.反码.补码是只针对有符号数吗?无符号数有没有这三种编码方式? 得到的答案:对于无符号数,原码.反码和补码是一致的 进一步,由于有符号数是以补码的形式存储在计算机中 ...

  7. Linux之ant安装部署

    接下来呢,就开始ant的部署,具体分为如下几个步骤: 1. 获取介质: 在apache的官网中直接下载,下载地址为:http://ant.apache.org/ 下载需要的版本即可: 2. 复制到us ...

  8. PHP实现微信企业付款到个人零钱步骤

    微信支付企业付款到零钱功能应用广泛,比如微信红包奖励,业务结算等.通过企业向个人付款,付款资金将直接进入用户微信零钱. 一 开通条件 ​ 付款资金 企业付款到零钱资金使用商户号余额资金. 根据商户号的 ...

  9. C# Web分页功能实现

    无论是网站还是APP分页功能都是必不可少的.为什么使用分页呢? 1,加载速度快,不会占用服务器太多资源,减少服务器压力. 2,减少数据库压力. 3,提升用户体验. 那么我们常用的分页方法有两种. 1, ...

  10. 通过C/C++,实现一元一次方程求解

    通过C/C++,实现一元一次方程求解: #include <bits/stdc++.h> using namespace std; string str, str_l, str_r; st ...