nginx + gunicorn + django 2.0 踩坑
部署踩坑
部署踩坑提前准备服务器端准备安装nginx使用uwsgi部署使用gunicorn配置配置nginx配置django中的路径url
提前准备
在本地能够 python(3) manage.py runserver
服务器端准备
安装nginx
为了防止python的某些包没有安装
请先 sudo apt-get install python-dev
然后 sudo apt-get install nginx
使用uwsgi部署
求求你了 别用uwsgi 玩了4个小时 试了不下15种配置方法 无功而返
现在还没有solution 跳过
使用gunicorn配置
相比于uwsgi, guncorn不能再好
先进入虚拟环境source /path/to/env/bin/active
再安装gunicornsudo pip(3) install gunicorn
/path/to/env/bin/gunicorn --chdir /path/to/project --pythonpath /path/to/env/ -w4 -b0.0.0.0:8017 project.wsgi:application
这边用的8017端口
配置nginx
新建一个配置文件sudo vim /etc/nginx/sites-available/your_conf.conf
在your_conf.conf
中写下如下内容:
server { listen 80; server_name your_domain_name.com; charset utf-8; client_max_body_size 75M; location /media { alias /path/to/project/media; } location /static { alias /path/to/project/static; } location / { uwsgi_pass unix:///home/tu/zqxt/zqxt.sock; include /etc/nginx/uwsgi_params; }}
listen默认一般都是80端口, 如果没有media文件就不配置,这个static文件夹是运行python(3) manage.py collectstatic
后生成的文件夹,因为没有用到uwsgi,所以uwsgi_pass看心情随缘,include按照这个来.
然后复制到/sites-enabled/
中: sudo ln -s /etc/nginx/sites-available/your_conf.conf /etc/nginx/sites-enabled/your_conf.conf
ps: nginx配置一般都在/etc/nginx/
中,/sites-available/
里面保存你可能要用到的configure文件
在/sites-enabled/
保存目前生效的configure文件
配置django中的路径url
如果不配置这个会找不到static文件夹
from django.conf.urls.static import staticfrom your_project import settingsurlpatterns = [ # your path here path('admin/', admin.site.urls, name='admin'),] + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
这是Django 2.0版本之后才有的,详情请见官方文档 https://docs.djangoproject.com/en/2.0/ref/urls/
然后 service nginx restart
重启nginx,就可以看到了网页了.
(注意只能在gunicorn中配置的端口访问 eg: your_domain_name.com:8017)
转载于:https://www.cnblogs.com/gongchengmiao/p/9154918.html
nginx + gunicorn + django 2.0 踩坑相关推荐
- 一次Delta lake 0.8.0 踩坑有感:使用新框架的新版本,一定要尽早关注多多关注社区动态...
点击上方蓝色"明哥的IT随笔",关注并选择"设为星标",keep striving! 一.数据胡三剑客介绍 关注大数据发展动态的朋友,都知道最近几年数据湖存储引 ...
- Qt5.13.2中配置opencv4.5.0踩坑记录
目录 cmake编译opencv时速度过慢或超时 mingw32-make时报错 错误一 [modules\core\CMakeFiles\opencv_core.dir\build.make:1 ...
- 【MathType安装】Office2019+MathType7.4.8.0+踩坑记录+最终使用方案
使用Office2019安装MathType7.4.8.0屡屡碰壁,最终使用的解决方案不同于网络上的大多数方法.尽管当前记录的解决方案还不完美.未做到一劳永逸,但能用就行. MathType安装包获取 ...
- nginx + gunicorn + django的简单部署
sudo apt-get install nginxcd /etc/nginx/sites-availablesudo vim default 原本是想安装Image包,但是百度的方法都乱七八糟的不能 ...
- Android~老项目项目升级GradleAGP 7.0踩坑
结合最近对公司项目做了一下升级,踩了点坑.记录一下,方便后续有人参考. module模块build.gradle变化 apply plugin变成了plugins 对部分android闭包下面的属性也 ...
- 联想ThinkSystem服务器 安装ESXI 7.0 踩坑记录
头铁,上了ThinkSystem服务器,记录下安装esxi7.0遇到的一些问题. 1.制作安装U盘
- 高德地图升级v2.0踩坑日记
事情是这样的,有一天产品找到我说我们系统的地图绘制板块的时候有些卡,是否可以优化一下. 于是我持怀疑态度去系统查看,大部分的地图操作都很流畅,莫非产品在耍我??? 直到我点开了一个导入的板块数据(如下 ...
- Django Vue 项目踩坑记:The field admin.LogEntry.user was declared with a lazy reference to ‘xxx‘
功能期望 基于Django提供的AbstractUser类重写User模型,在其中根据业务需求增加信息,并将新的用户模型设为系统默认用户模型. 问题描述 完成自定义User模型的编写,并在settin ...
- 错误代码:0x80072EFE,Win11/Win10无法安装.Net Framework3.5(包括.NET2.0和.NET3.0)踩坑总结【半天血泪史】
开篇强调!!!Win11与Win10是可以安装.net3.5的,免得一些人上来就胡说,什么系统太高了,让你降版本,结果还是不行,白白浪费时间!!!再说Win11目前来讲也出了一阵子了,个人感觉还是挺稳 ...
- Nginx配置与踩坑
系统平台:CentOS 7 安装Nginx 1.下载Nginx:http://nginx.org/ ,选择需要的版本/download/nginx-1.20.2.tar.gz ,在a标签中查看 wg ...
最新文章
- (八)pdf的构成之文件体(page属性)
- Web Service 的工作原理
- 2012年企业Web应用安全防范与趋势展望
- 正则表达式获取一个文本域中每一行的值并且去掉前后空格
- 『ACM-算法-Hash算法』信息竞赛进阶指南--字符串哈希
- Linux下redis的安装及配置.
- 阿里云迁云方式大汇总 1
- 链家信息python
- 华为Mate30 5G评测:首款5G爆品, 一步到位兼容5G双模全网通
- Docker : Docker 查看容器 IP 地址以及相关信息
- CS229 6.18 CNN 的反向传导算法
- javascript 方法总结(Array篇)
- CentOS配置postgresql+postsql
- 计算机系统构成及硬件基础知识
- 2021有什么好的入耳式耳机推荐?耳机热销性价比牌子排行榜单推荐!
- android 常用URI
- 关于VB.net禁用右键菜单的实现
- 4k计算机配置,想玩4K分辨率游戏 PC需要什么配置?
- 粮食行业视频监控系统互联互通技术规范
- 解决 ERROR: Could not find a version that satisfies the requirement xxx 的问题
热门文章
- Django之Form组件补充
- 1018. Public Bike Management (30)
- POJ分层练习题目列表
- 转:Android应用Icon大小在不同分辨率下定义
- 检查容器内的磁盘占用shell(check_container_disk.sh)
- 1.5(java学习笔记)this关键字
- 物联网领域不断扩展,ATT很“兴奋”
- 生活在REPL中(续):在REPL中动态加载依赖的库
- 【JavaScript】javaScript基础知识回顾
- /etc/mtab is not writable