基于Ubuntu16.04的django+uwsgi+nginx安装部署

简介: 基于Ubuntu16.04的django+uwsgi+nginx部署安装

最近由于导师的一点破事,我一个从来没有搞过后台的人来搞后台,由于只会用python,所以没得选,只能由题目的套装。这三个东西的网上教程坑非常之多。我们一步一步来。

首先是一台无瑕,没有被玷污过的新机子。

一、安装虚拟环境

别问为啥要装,装就完事了,ubuntu里面默认的是py2,现在一般都是py3了,按步骤来
安装python3-venv

apt-get install python3-venv

接下来cd到你想去的目录下创建虚拟环境ven(名字比较随意)

python3 -m venv ven

ven/bin中的python是3.5的
接下来激活虚拟环境,cd到ven/bin目录下

source activate

接下来你会看到你命令行的前面有个(ven),这就是激活啦。
退出虚拟环境也得cd到ven/bin目录下

source deactivate


二、安装django

这个简单哈

pip install django

注意要在虚拟环境下这么干

三、安装uwsgi

安装这个需要先装一下其他工具


sudo apt-get install python3-setuptools
sudo apt-get install python3-dev
pip install uwsgi


注意:按照这个时候,其余的教程就会让你测试了,其实这个测试容易出很多的问题,我推荐先不要急着测试,只要pip install uwsgi没有出现问题就暂时不要管这个


四、安装nginx

先更新一下哈

sudo apt-get update

再安装nginx

sudo apt-get install nginx

五、接下来干的事情

首先再项目目录下新建一个uwsgi.ini文件

[uwsgi]
chdir   = /你的路径/项目
module  = 项目名称.wsgi
master  = true
processes = 10
socket  = :8000
vacuum  = true
pythonpath = /你的虚拟环境的路径/lib/python3.5/site-packages/ #这个需要具体调整

然后再新建一个nginx.conf文件

upstream django {
    server 0.0.0.0:8000;
    }
server {
listen 80;
server_name 你的域名或者ip;
charset utf-8;
client_max_body_size 75M;
location /media {
    alias /你的路径/项目/media;  # 指向django的media目录
    }

location /static {
    alias /你的路径/项目/static; # 指向django的static目录
    }

location / {
    uwsgi_pass  django;
    include  uwsgi_params;
}
}

写好之后把这个玩意链接到uwsgi的启动配置文件中

ln -s /你的目录/项目/nginx.conf  /etc/nginx/conf.d/

都搞定之后,重启一下nginx

service nginx restart

cd到你的项目目录下,开启uwsgi

uwsgi -i uwsgi.ini

不出意外大功告成,然后这个时候如果没问题,首先回去在目录下新建run.log文件,然后修改一下uwsgi.ini文件,新增两行

daemonize = /你的路径/项目/run.log
disable-logging = true

这样的话就会将日志信息保存至run.log里面,而且不记录正常信息,要不然就爆了。






相关文章
|
4月前
|
负载均衡 Ubuntu 应用服务中间件
|
4月前
|
存储 Ubuntu 应用服务中间件
【Nginx】centos和Ubuntu操作系统下载Nginx配置文件并启动Nginx服务详解
【Nginx】centos和Ubuntu操作系统下载Nginx配置文件并启动Nginx服务详解
76 1
|
3月前
|
Ubuntu 前端开发 JavaScript
技术笔记:Ubuntu:一个部署好的tomcat应用(war包)怎么用Nginx实现动静分离?
技术笔记:Ubuntu:一个部署好的tomcat应用(war包)怎么用Nginx实现动静分离?
|
30天前
|
应用服务中间件 Linux 测试技术
Nginx+uWSGI
【8月更文挑战第22天】
30 6
|
1月前
|
网络协议 Unix 应用服务中间件
Nginx七层(应用层)反向代理:UWSGI代理uwsgi_pass篇
Nginx七层(应用层)反向代理:UWSGI代理uwsgi_pass篇
64 1
|
1月前
|
存储 Ubuntu 安全
在Ubuntu 16.04上安装Django并搭建开发环境的方法
在Ubuntu 16.04上安装Django并搭建开发环境的方法
13 0
|
1月前
|
关系型数据库 MySQL 应用服务中间件
在Ubuntu 16.04上使用Nginx安装和保护phpMyAdmin的方法
在Ubuntu 16.04上使用Nginx安装和保护phpMyAdmin的方法
18 0
|
1月前
|
关系型数据库 Linux 应用服务中间件
如何在 Ubuntu 14.04 服务器上使用 Nginx 安装和保护 phpMyAdmin
如何在 Ubuntu 14.04 服务器上使用 Nginx 安装和保护 phpMyAdmin
15 0
|
2月前
|
Ubuntu 应用服务中间件 Linux
Linux学习之Ubuntu 20中OpenResty的nginx目录里内容和配置文件
总的来说,OpenResty的Nginx配置文件是一个强大的工具,它允许你以非常灵活的方式定义你的Web服务的行为。
31 2
|
3月前
|
缓存 Ubuntu 应用服务中间件
Ubuntu 22.04 上安装、配置和使用 Nginx 可以分为几个简单的步骤
Ubuntu 22.04 上安装、配置和使用 Nginx 可以分为几个简单的步骤