服务器Ubuntu系统上,利用Nginx+uWSGI部署Django项目(多个项目)

陈占占
• 阅读 922

前提已经安装好Nginx和uwsgi。 将Django项目上传到服务器上。 服务器Ubuntu系统上,利用Nginx+uWSGI部署Django项目(多个项目) 在项目根目录上,创建uWSGI的配置文件uwsgi.ini。 服务器Ubuntu系统上,利用Nginx+uWSGI部署Django项目(多个项目) 个人简历项目-uwsgi.ini配置

[uwsgi]
socket=:8000
# 项目在服务器上的地址
chdir=/home/ubuntu/chenzhanxu/blog
module=resume.wsgi
master=true
processes=2
threads=2
vacuum=true
harakiri=120
buffer-size=65536
lazy-apps=true
# 项目的虚拟环境
home=/home/ubuntu/.virtualenvs/chen

个人博客项目-uwsgi.ini配置

[uwsgi]
# 开放的服务器端口号
socket=:8001
# 项目在服务器上的地址
chdir=/home/ubuntu/chenzhanxu/blog
module=blog.wsgi
master=true
processes=2
threads=2
vacuum=true
harakiri=120
buffer-size=65536
lazy-apps=true
# 项目的虚拟环境
home=/home/ubuntu/.virtualenvs/chenzhanxu

尽量将ini文件中的注释删掉,以免报错。 uwsgi文件配置完之后,再来配置Nginx,Nginx默认的配置文件都在/etc/nginx目录下,所以在/etc/nginx/sites-available目录下进行配置default文件。

sudo vim /etc/nginx/sites-available/default

我是把default文件中的内容全部备份了一份(免得改错不知道源文件),然后删除了。

# 第一个项目配置
server {
    # SSL证书
    listen 443 ssl;
    ssl_certificate /home/ubuntu/chenzhanxu/chenzhanxu.top_nginx/chenzhanxu.top_bundle.crt;
    ssl_certificate_key /home/ubuntu/chenzhanxu/chenzhanxu.top_nginx/chenzhanxu.top.key;
    ssl_session_timeout 5m;
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
    ssl_prefer_server_ciphers on;
    # 第一个项目的域名(一级域名)
    server_name     www.chenzhanxu.top;
    charset         UTF-8;
    # 错误记录
    access_log      /home/ubuntu/chenzhanxu/blog/log/blog_access.log;
    error_log       /home/ubuntu/chenzhanxu/blog/log/blog_error.log;

    client_max_body_size 75M;

    location / {

        include uwsgi_params;
        uwsgi_pass 127.0.0.1:8001;    #端口号-要和uwsgi中的一样
        uwsgi_read_timeout 10;

    }
    # 静态文件
    location /static {

        expires 30d;
        autoindex on;
        add_header Cache-Control private;
        alias /home/ubuntu/chenzhanxu/blog/app/static;

    }

}
# 第二个项目配置
server {

    listen 80 default_server;
    # 第二个项目的域名(二级域名)
    server_name     resume.chenzhanxu.top;
    charset         UTF-8;
    # 错误记录
    access_log      /home/ubuntu/chenzhanxu/resume/log/resume_access.log;
    error_log       /home/ubuntu/chenzhanxu/resume/log/resume_error.log;

    client_max_body_size 75M;
    client_header_buffer_size 16k;
    large_client_header_buffers 4 64k;

    location / {

        include uwsgi_params;
        uwsgi_pass 127.0.0.1:8000;    #端口号-要和uwsgi中的一样
        uwsgi_read_timeout 10;

    }
    # 静态文件
    location /static {

        expires 30d;
        autoindex on;
        add_header Cache-Control private;
        alias /home/ubuntu/chenzhanxu/resume/app/static;

    }

}

Nginx与uwsgi配置完成之后,用uwsgi启动项目。

# 需要到项目的跟目录上运行uwsgi.ini文件
sudo uwsgi --ini uwsgi.ini
# 后台运行,关闭ssh也可以查看
sudo uwsgi -d --ini uwsgi.ini
# 查看运行中的uwsgi
ps -ef|grep uwsgi
# 关闭运行中的uwsgi
udo kill -9 *****

服务器Ubuntu系统上,利用Nginx+uWSGI部署Django项目(多个项目)

点赞
收藏
评论区
推荐文章
浅梦一笑 浅梦一笑
5个月前
初学 Python 需要安装哪些软件?超级实用,小白必看!
编程这个东西是真的奇妙。对于懂得的人来说,会觉得这个工具是多么的好用、有趣,而对于小白来说,就如同大山一样。其实这个都可以理解,大家都是这样过来的。那么接下来就说一下python相关的东西吧,并说一下我对编程的理解。本人也是小白一名,如有不对的地方,还请各位大神指出01名词解释:如果在编程方面接触的比较少,那么对于软件这一块,有几个名词一定要了解,比如开发环
菜鸟阿都 菜鸟阿都
1年前
springboot+vue项目linux环境部署
项目部署是一个程序员必备的技能,当项目开发过程中,需要将项目部署在开发服务器上,进行自测,或协助运维,测试进行环境的搭建配置,学会了项目部署,你就是团队中最亮的那个仔。项目简介后端:springboot项目【打包为jar包】前端:vue项目【通过cli3搭建】目标服务器:liunx操作系统使用工具xshell:通过命令操作服务器sftp:上传安装包到服务器部
Stella981 Stella981
1年前
Django+nginx+uwsgi部署教程(centos7+ubuntu16.4)
项目部署教程在线演示(https://www.oschina.net/action/GoToLink?urlhttp%3A%2F%2F139.199.131.146%2F)1.1.原理介绍django 一个基于python的开源web框架uwsgi 一是一个web服务器,也可以当做中间件
Stella981 Stella981
1年前
Nginx与uWSGI交互
1\.更改uwsgi的配置文件uwsgi.iniuwsgi...使用nginx连接时,监控地址socket127.0.0.1:8080直接做web服务器时,所监控地址http127.0.0.1:80802\.在nginx配置文件中的路由模块添加uwsgi支持.
Wesley13 Wesley13
1年前
ubuntu NGINX uwsgi https 部署Django 遇到的问题
搞了3天终于把Django成功部署到Ubuntu,记录一下;引用来自泡泡茶壶(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fblog.csdn.net%2Fbreavo_raw):Ubuntu下的NginxUwsgiDjango项目部署详细流程(https://
Stella981 Stella981
1年前
Docker镜像+nginx 部署 vue 项目
一、打包vue项目在开发完的vue项目输入如下命名,打包生成dist文件夹yarnbuild/npmrunbuild此时根目录会多出一个文件夹:dist文件夹,里面就是我们要发布的东西。如果将该dist目录整个传到服务器上,部署成静态资源站点就能直接访问到该项目。!(https://img2018.cnblog
Stella981 Stella981
1年前
Django3.0 + nginx + uwsgi 部署
CentOS7.6下部署Django3.0应用,使用nginxuwsgi部署:1\.uwsgi部署pipinstalluwsgi在项目的根目录中,新建文件夹conf,然后进入conf文件夹,并新建文件uwsgi.ini,内容如下:mysite_uwsgi.inifileuws
Stella981 Stella981
1年前
Django + Uwsgi + Nginx 实现生产环境部署
本节内容uwsgi介绍uwsgi安装使用nginx安装配置djangowithnginx如何在生产上部署Django?Django的部署可以有很多方式,采用nginxuwsgi的方式是其中比较常见的一种方式。uwsgi介绍uWSGI是一个Web服务器,它实现了WSGI协议、uwsgi、http等协议。N
Wesley13 Wesley13
1年前
Ubuntu 上使用uwsgi部署django项目
在Ubuntu上使用uwsgi来部署1.将django项目发送到服务器上2.将settings.py的STATICFILES_DIRS注释添加STATIC_ROOTos.path.join(BASE_DIR,"static")收集一下静态文件pythonmanage.pycollects
芝士年糕 芝士年糕
5个月前
如何将项目部署到服务器上
一、购买服务器打开服务器官网3A服务器,在里面购买后会有专人在线聊,挺不错的二、用Xshell连接服务器下载Xshell输入公网IP以及创建时的账号密码进行连接三、安装Java环境1、下载Oracle官网!image(https://i