django项目部署上线 nginx + uwsgi
一、安装python3
安装步骤:https://www.cnblogs.com/zhangqigao/p/11661875.html
二、修改django中的配置文件
修改settings.py
(1) 设置DEBUG=FALSE, ALLOWED_HOST = ['*']
如果上线的时候出现500,502错误等,可以将DEBUG=False设置为DEBUG=True,这时候你就可以在浏览器中看到具体的错误,然后进行调试
(2)
静态文件的STARC的路径配置
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
5. 安装pip3, 使用pip3来安装必备的数据库
安装pip3 :up主在这里遇到过一个bug,安装不上库文件,这时候你需要将pip3更新到最新的版本
apt install python3-pip
安装必备库:
pip3 install django
pip3 install pymysql
pip3 install pillow
6. 查看进程:
看看端口啥的, 如果80端口被占用了,下面可以更换到其他端口,也可以直接kill -9 掉占用端口的程序
netstat -lntp
7. 启动项目
进入manage.py文件目录下:
python3 manage.py runserver 0.0.0.0:8000
二、使用nginx+uwsgi部署
1.nagin和uwsgi介绍
关于nginx和uwsgi与django的联系,有一篇博文讲得简单明了
https://blog.csdn.net/u014761344/article/details/40146597
(1)nginx:
nginx概念:
Nginx是一款高性能的http 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。
nginx应用场景:
1、 http服务器。Nginx是一个http服务可以独立提供http服务。可以做网页静态服务器。
2、 虚拟主机。可以实现在一台服务器虚拟出多个网站。例如个人网站使用的虚拟主机。
基于端口的,不同的端口
基于域名的,不同域名
3、 反向代理,负载均衡。当网站的访问量达到一定程度后,单台服务器不能满足用户的请求时,需要用多台服务器集群可以使用nginx做反向代理。并且多台服务器可以平均分担负载,不会因为某台服务器负载高宕机而某台服务器闲置的情况。
(2)uwsgi
uwsgi概念:
uWSGI实现了WSGI的所有接口,是一个快速、自我修复、开发人员和系统管理员友好的服务器
2.安装nginx
nginx启动后,可以在公网的ip地址上看到welcome to nginx
sudo apt-get install nginx
3.查看nginx的状态
systemctl status nginx 查看nginx的状态
system start/stop/enable/disable nginx 启动/关闭/设置开机启动/禁止开机启动
service nginx status/stop/restart/start 查看状态/停止/重启/开启 ngnix
安装完成后,如果不能启动nginx,可以使用 ps -ef | grep nginx 查看进程,杀掉全部的nginx进程,再重新启动nginx
4.安装uwsgi
pip install uwsgi
5.在nginx的配置文件中加载自定义的nginx的配置文件
up主这里使用自己的.conf文件放在 /home/app/conf/的,这里建议大家建立一个统一的文件夹来管理conf文件
进入nginx的配置文件:
vim /etc/nginx/nginx.conf
修改文件:增加 include /home/app/conf/.conf;
6. 配置自定的nginx文件:
up主建议每一个项目都单独建立一个conf文件
找到自己创建的conf文件, 并进入配置:
vim /home/app/conf/axfnginx.conf
配置:
7.配置uwsgi
up主是将uwsgi.ini文件与conf文件放在一起的
pythonpath为工程文件目录
scoket要与nginx中的完全相同
logto为保存日志文件的地方
nginx和uwsgi还可以配置更多的东西,这里配置的都是最简单需要的内容
8.启动项目
进入uwsgi.ini文件目录中:
uwsgi --ini uwsgi.ini 这边可以交给后台处理:nohup uwsgi --ini uwsgi.ini &
9.部署完成
原博客地址:https://www.jianshu.com/p/c060448b3e78
django项目部署上线 nginx + uwsgi的更多相关文章
- (转) 解决django项目部署到nginx+uwsgi服务器后 admin页面样式消失的问题
原贴地址:https://blog.csdn.net/qq_42571805/article/details/80862455 摘要 uwsgi为主要服务器,nginx为反向代理服务器部署完成之后发现 ...
- 【Django】Django web项目部署(Nginx+uwsgi)
一.安装uwsgi 通过pip安装uwsgi. pip install uwsgi 测试uwsgi,创建test.py文件: def application(env, start_response): ...
- Django项目部署:使用uwsgi和nginx的方式
一.背景 前两天制作的个人博客网站基本完工,大致功能具备.但是在部署环节却也处处碰壁,这里也来总结以下,以备将来不时查看以及完善. 二.前提 2.1 需要的知识 django Django是一个基于p ...
- django项目部署上线
前言 完善的django项目上线,有很多种上线的方法,比如apache, uwsgi, nginx等.这里只介绍2种,一种是django自带的,另外一种则是nginx + uwsgi完成介绍.这里的系 ...
- Django应用部署:nginx+uwsgi方式
环境准备 nginx+uwsgi方式部署顾名思义,需要nginx和uwsgi两个软件包. nginx不用说,是必备的,关于nginx的安装本文不再赘述,详情可以自行搜索或者参考我以前的文章: Debi ...
- 使用gunicorn将django项目部署到生产环境的子目录下,在nginx后端获取客户真实IP地址
生产环境有时,并不是为了一个项目而存在的.毕竟,域名是比较稀有的. 今天遇到这个问题,解决了.作个记录. 并且,如果将django项目部署在Nginx后面,那如何获取用户真实的IP地址呢? 下面就来解 ...
- [部署开发环境]部署django的生成环境nginx+uwsgi+django
#教程 # ubuntu部署django项目 # 部署准备 - ubuntu操作系统 -- vagrant虚拟 - Nginx服务器 -- 安装在ubuntu的web服务器 - uWSGI应用协议服务 ...
- Django项目部署(django+guncorn+virtualenv+nginx)
一.说明 为了django项目部署到生产环境上,能够稳定的运行,且能够同时指出http和https的访问,对django的部署进行了一些研究,决定采用django + gunicorn + virtu ...
- Linux学习笔记之Django项目部署(CentOS)
一.引入 用Django写了一个测试的项目,现在要部署在Linux上,一般这种情况下,只要在项目里面敲一行命令:python manage.py runserver 0.0.0.0:8000就行了.但 ...
随机推荐
- Angular 学习笔记 ( 我追的 feature 和 bug )
Angular 有许多功能还不齐全,也有不少 bug 让人很头疼,所以这里做一些记入 Angular Bug 1.input type="number", valueChanges ...
- Atcoder&CodeForces杂题11.7
Preface 又自己开了场CF/Atcoder杂题,比昨天的稍难,题目也更有趣了 昨晚炉石检验血统果然是非洲人... 希望这是给NOIP2018续点rp吧 A.CF1068C-Colored Roo ...
- java常见排序算法
今天去面试的时候又考了排序算法,排序这个东西,你以为你懂了,但是真正去写的时候才会发现好多细节自己都模棱两可,我写着写着就全都乱了,回来之后赶紧重新写一遍. (1)冒泡排序 public void b ...
- vue的事件对象
事件对象: v-on:click/mouseover 简写: @click="" @click="show($event)" <input t ...
- 1+X证书学习日志——盒模型
## padding的作用: 控制子元素和父元素之间的位置关系 padding设置方法: ...
- CVE-2019-11517 CSRF in Wampserver 3.1.4-3.1.8
https://www.cnblogs.com/iAmSoScArEd/ Affected product:WampServer 3.1.4-3.1.8 Offiical description:&q ...
- LA服务可用性4个9是什么意思?怎么达到?
SLA:服务等级协议(简称:SLA,全称:service level agreement).是在一定开销下为保障服务的性能和可用性,服务提供商与用户间定义的一种双方认可的协定.通常这个开销是驱动提供服 ...
- ArduPilot存储管理 Storage EEPROM Flash
AP_HAL::Storage 此类可以应用于所有平台.PX4v1平台支持8k的EEPROM,Pixhawk平台支持16k的FRAM铁电存储器 存储大小定义:libraries/AP_HAL/AP_H ...
- Vue框架之vuex的使用
1.首先需要在你的项目目录下安装vuex 终端命令: 2.在全局组件中导入与声明vuex 3.创建store实例对象 let store = new Vuex.store({ state:{ }, m ...
- CentOS7.x安装nginx
1.安装先决条件 yum install yum-utils 2.设置yum存储库和创建/etc/yum.repos.d/nginx.repo 使用以下内容命名的文件 :稳定版 [nginx-stab ...