基于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月前
|
弹性计算 运维 监控
快速部署 Nginx 社区版
Nginx是一个高性能的HTTP和反向代理服务器。Nginx在计算巢上提供了社区版服务,您无需自行配置云主机,即可在计算巢上快速部署Nginx服务、实现运维监控,从而方便地基于Nginx搭建您自己的应用。本文介绍使用如何通过计算巢快速部署Nginx社区版。
快速部署 Nginx 社区版
|
14天前
|
应用服务中间件 Linux 网络安全
nginx安装部署ssl证书,同时支持http与https方式访问
为了使HTTP服务支持HTTPS访问,需生成并安装SSL证书,并确保Nginx支持SSL模块。首先,在`/usr/local/nginx`目录下生成RSA密钥、证书申请文件及自签名证书。接着,确认Nginx已安装SSL模块,若未安装则重新编译Nginx加入该模块。最后,编辑`nginx.conf`配置文件,启用并配置HTTPS服务器部分,指定证书路径和监听端口(如20000),保存后重启Nginx完成部署。
212 7
|
20天前
|
负载均衡 Ubuntu 应用服务中间件
nginx修改网站默认根目录及发布(linux、centos、ubuntu)openEuler软件源repo站点
通过合理配置 Nginx,我们可以高效地管理和发布软件源,为用户提供稳定可靠的服务。
80 13
|
3月前
|
中间件 应用服务中间件 nginx
Nginx+uWSGI+Django原理
Nginx+uWSGI+Django原理
|
3月前
|
前端开发 JavaScript 应用服务中间件
使用nginx部署网站
使用nginx部署网站
|
3月前
|
JavaScript 应用服务中间件 nginx
nginx部署vue项目
本文介绍了将Vue项目部署到Nginx的步骤,包括构建Vue项目、上传dist文件夹到服务器、安装Nginx、配置Nginx代理静态文件以及重启Nginx,确保了Vue应用可以通过域名或IP地址访问。
180 1
|
3月前
|
前端开发 JavaScript 应用服务中间件
linux安装nginx和前端部署vue项目(实际测试react项目也可以)
本文是一篇详细的教程,介绍了如何在Linux系统上安装和配置nginx,以及如何将打包好的前端项目(如Vue或React)上传和部署到服务器上,包括了常见的错误处理方法。
979 0
linux安装nginx和前端部署vue项目(实际测试react项目也可以)
|
3月前
|
Kubernetes 应用服务中间件 nginx
k8s基础使用--使用k8s部署nginx服务
本文介绍了Kubernetes中核心概念Deployment、Pod与Service的基本原理及应用。Pod作为最小调度单元,用于管理容器及其共享资源;Deployment则负责控制Pod副本数量,确保其符合预期状态;Service通过标签选择器实现Pod服务的负载均衡与暴露。此外,还提供了具体操作步骤,如通过`kubectl`命令创建Deployment和Service,以及如何验证其功能。实验环境包括一台master节点和两台worker节点,均已部署k8s-1.27。
243 1
|
4月前
|
NoSQL 关系型数据库 Redis
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
mall在linux环境下的部署(基于Docker容器),docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongodb、minio详细教程,拉取镜像、运行容器
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
|
4月前
|
应用服务中间件 nginx Docker
docker应用部署---nginx部署的配置
这篇文章介绍了如何使用Docker部署Nginx服务器,包括搜索和拉取Nginx镜像、创建容器并设置端口映射和目录映射,以及如何创建一个测试页面并使用外部机器访问Nginx服务器。
下一篇
开通oss服务