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. C# 倒计时,显示天,时,分,秒。时间可以是从数据库捞出来

    从数据库把时间读出来,接着 你用个timer控件启用控件,设置1000毫秒timer时间里 用当前时间-你取出的时间 就可以了 DateTime furtime = Convert.ToDateTim ...

  2. CSPS模拟 91

    T1 sz最多根号种 T2 没计算内存,水过了..CSPS这样的话要爆零的qaq T3 感谢miku带我重学ST表%%%%%

  3. IO类

    Java的IO体系分为Input/Output和Reader/Writer两类,区别在于Reader/Writer在读写文本时能自动转换内码.基本上,所有的IO类多是配对的,即有XXXInput,就有 ...

  4. docker初解

    1 什么是容器 容器就是在隔离的环境中运行的一个进程,如果进程停止,容器就会退出. 隔离的环境拥有自己的系统文件,ip地址,主机名等 容器是一种软件打包技术 程序:代码,命令进程:正在运行的程序容器的 ...

  5. dubbo分布式Service不可以创建Error creating bean with name 'XXXXXX'

    org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'demoService' ...

  6. centos7 openssh 7.9.1 升级

    由于项目构建时间比较长,近期安全检查发现openssh有漏洞.所以要升级openssh到7.9p1版本.由于ssh用于远程连接,所以要谨慎操作. 1. 依赖安装 OpenSSL版本:目前OpenSSH ...

  7. ArcGIS API For Javascript :如何制作地图切换器

    大部分情况下我们开发会使用原生的地图切换器,由于每个项目的页面风格不同,业务场景不同,因此需要做一些样式不同的地图切换器. 首先可以照猫画虎,自己照着地图切换器的样式抄一个,或者看看主流的地图切换器都 ...

  8. BootStrap中的collapse插件堆叠效果

    通过网络上的一系列查找,总结出的collapse插件堆叠效果(网上没有找到,只能自己弄了,帮助那些和我遇到一样状况的同学) 首先感谢一位网友的知识总结给了我灵感,在这里先帮他推荐一波(https:// ...

  9. Linux内核版本 uname命令 GNU项目 Linux发行版

    1.内核版本由linux内核社区统一编码和发布,格式如下图: major.minor.patch-build.desc 主版本号.次版本号.对次版本号的修订次数-编译次数.当前版本的特殊信息 次版本号 ...

  10. RHEL7.2 安装Eclipse-oxygen Hadoop开发环境

    1 Eclipse-oxygen下载地址 http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/re ...