python3-django+uwsgi+supervisor+nginx跳坑指南(记录)
首先运行django项目:在项目目录内:
python manage.py runserver 0.0.0.0:8000
外部服务器访问:http://www.xxx.com:8000/
可以正常运行
###参考:https://blog.51cto.com/chenx1242/1859830
如果不对,不太对?这是因为django项目里设置了ALLOWED_HOSTS的原因 我们在setting.py里设置一下
ALLOWED_HOSTS = ['*']
SECURE_SSL_REDIRECT=Flase
uwsgi 选择python版本,最开始的默认python版本是2.7下载的,之后再pip3安装一直用的是那个下载的包
~# uwsgi --python-version
2.7.5
重新下载之后
~# uwsgi --python-version
3.6.1
运行
#uswgi uwsgi.ini
提示并且服务无法访问:
unable to stat() /home/XXX/reload, events will be triggered as soon as the file is created
原因:项目目录下缺少一个用于缓冲的reload文件,新建一个名为reload的空文件就解决了
把uwsgi 和nginx结合运行:
uwsgi uwsgi.ini & /usr/local/nginx/sbin/nginx
停止uwsgi进程
sudo pkill -f uwsgi -9
用uwsgi运行项目:
可以打开但是无法加载css样式
supervisor 常见问题参考链接:https://segmentfault.com/a/1190000003955182
其中
Error: Another program is already listening on a port that one of our HTTP servers is configured to use. Shut this program down first before starting supervisord.
解决办法:
sudo unlink /tmp/supervisor.sock
或者:sudo unlink /var/run/supervisor.sock
出现:unix:///tmp/supervisor.sock no such file
法一:运行supervisorctl时保错,
修改/etc/supervisor/supervisor.conf文件
将file=/var/run/supervisor.sock 修改为/tmp/supervisor.sock
重启supervisor服务即可
法二:重新安装supervisor :
sudo pip install supervisor echo_supervisord_conf > /etc/supervisord.conf sudo supervisord sudo supervisorctl
uwsgi --http :8000 --chdir /home/ftpuser/www/untitled3 --module untitled3.wsgi

出现no python application found, check your startup logs for errors
我的原因是命令写错了,上面。。。。test.wsgi写成了project.wsgi
以下为复制:
我在Centos6安装了nginx,尝试设置虚拟主机。目前的问题是我找不到/etc/nginx/sites-available目录。
有什么东西需要我创建的吗?目前我已经知道nginx启动了,因为我能在浏览器打开网页。
分割线
///////////////////////////////////////////////////////////////////////////////////////
Nginx下Django Admin界面Css、JS丢失问题解决方法:原文链接:https://blog.csdn.net/qq_24861509/article/details/45727983
我的项目位置在 /z/mysite/
其中我们需要在mysite下新建一个static文件夹,
用来存放admin需要的一些css、img、js 1.修改mysite/settings.py:
2.使用命令将django安装目录下的static文件拷贝过来:
python manage.py collectstatic
OK,现在已经在/z/mysite/static/下生成admin文件夹,里边有css、img、js 3.修改Ngnix的ngnix.conf ,
添加以下代码: location ~/static/ { root /z/mysite/ ; break; }
4.重启uwsgi和nginx,再看看admin是不是已经恢复了呢。
///////////////////////////////////////////////////////////////////////
worker_processes:操作系统启动多少个工作进程运行Nginx。注意是工作进程,不是有多少个nginx工程。
在Nginx运行的时候,会启动两种进程,一种是主进程master process;一种是工作进程worker process。
例如我在配置文件中将worker_processes设置为4,启动Nginx后,使用进程查看命令观察名字叫做nginx的进程信息,我会看到如下结果:
解决unix:///tmp/supervisor.sock no such file的问题
1、打开配置文件
vim /etc/supervisord.conf
这里把所有的/tmp路径改掉,/tmp/supervisor.sock 改成 /var/run/supervisor.sock,/tmp/supervisord.log 改成 /var/log/supervisor.log,/tmp/supervisord.pid 改成 /var/run/supervisor.pid 要不容易被linux自动清掉
2、修改权限
- sudo chmod 777 /run
- sudo chmod 777 /var/log
如果没改,启动报错 IOError: [Errno 13] Permission denied: '/var/log/supervisord.log'
3、创建supervisor.sock
- sudo touch /var/run/supervisor.sock
- sudo chmod 777 /var/run/supervisor.sock
4、启动supervisord,注意stop之前的实例或杀死进程
supervisord
python3-django+uwsgi+supervisor+nginx跳坑指南(记录)的更多相关文章
- CentOS7 + Python3 + Django(rest_framework) + MySQL + nginx + uwsgi 部署 API 开发环境, 记坑篇
CentOS7 + Python3 + Django(rest_framework) + MySQL + nginx + uwsgi 部署 API 开发环境 CentOS7 + Python3 + D ...
- CentOS7.4部署Python3+Django+uWSGI+Nginx
CentOS7.4部署Python3+Django+uWSGI+Nginx http://www.showerlee.com/archives/2590
- [转帖]Kubernetes - nginx-ingress 配置跳坑指南
Kubernetes - nginx-ingress 配置跳坑指南 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https:// ...
- JavaScript 跳坑指南
JavaScript 跳坑指南 坑0-String replace string的replace方法我们经常用,替换string中的某些字符,语法像这样子 string.replace(subStr/ ...
- 两百条微信小程序跳坑指南(不定时更新)
微信小程序联盟出品 跳坑textarea<二百二十三>不显示文本及textarea相关问题集合跳坑<二百一十三> background-image无法获取本地资源图片....跳 ...
- CGAL代码阅读跳坑指南
CGAL代码阅读跳坑指南 整体框架介绍 CGAL中的算法和数据结构由它们使用的对象类型和操作参数化.它们可以处理满足特定语法和语义需求的任何具体模板参数.为了避免长参数列表,参数类型被收集到一个单独的 ...
- Django Linux环境下部署CentOS7+Python3+Django+uWSGI+Nginx(含Nginx返回400问题处理、防火墙管理)
本文将介绍如何在Linux系统上部署Django web项目,本次部署基于下面的架构: CentOS7+ Python3.5 + Django1.11 + uWSGI + Nginx 亲测可行!!按照 ...
- django -- uwsgi+nginx部署
一. 安装nginx How To Install Nginx on CentOS 7 添加epel扩展仓 sudo yum install epel-release 安装Nginx yum inst ...
- Linux下Python3.6的安装及避坑指南
Python3的安装 1.安装依赖环境 Python3在安装的过程中可能会用到各种依赖库,所以在正式安装Python3之前,需要将这些依赖库先行安装好. yum -y install zlib-dev ...
随机推荐
- c++打印实心菱形,空心三角形,十字星,空心正方形,实心平行四边形
今天翻资料的时候,无意间发现了一个文件,是刚接触编程的时候用c++写的一段程序,我称之为"图形打印机",想着把所有图形都打印出来,后来发现其实每种图形的代码都是一个思路,就不想做重 ...
- 03、新手必须掌握的Linux命令
Ⅰ. 常用系统工作命令 1. echo 命令 echo命令用于在终端输出字符串货变量提取后的值,格式为"echo [字符串 | $变量]" 例:把指定字符串"LinxuH ...
- vue.js 如何加载本地json文件
在项目开发的过程中,因为无法和后台的数据做交互,所以我们可以自建一个假数据文件(如data.json)到项目文件夹中,这样我们就可以模仿后台的数据进行开发.但是,如何在一个vue.js 项目中引入本地 ...
- 总结HTML5新增的标签及功能
https://my.oschina.net/chengkuan/blog/422306 标记意义及用法分析/示例 属性/属性值/描述 <article> 定义独立的内容,如论坛帖子.报纸 ...
- redis中获取不同自增数的方法
项目需求,需要获取不同的自增数,然后与其他信息拼接成一个字符串作为编号,这边有一种基于数据库的获取自增数的方法,这边略过,还有一种基于redis的实现. 此方法可以用到redis的自增函数 publi ...
- MySQL Execution Plan--将范围扫描转换为等值查询
将大于或小于的范围查询装换为等值查询 在生产环境,经常会遇到需要对Worker表进行多次尝试的业务,超过一定重试次数后抛弃或使用其他方式处理,在查找满足重试条件数据时,通常会使用“小于”运算符并伴随排 ...
- JVM 整体流程介绍
一. JVM自身的物理结构 从图中可以看出 JVM 的主要组成部分 ClassLoader(类加载器),Runtime Data Area(运行时数据区,内存分区),Execution Engine( ...
- ARM处理器基础知识
1.ARM处理器的寄存器,ARM与Thumb状态,7中运行模式 http://blog.chinaunix.net/uid-28458801-id-3494646.html 2.ARM的7种工作模式. ...
- 大数据:Hadoop(简介)
一.简介 定义:开源的,做分布式存储与分布式计算的平台: 功能:搭建大型数据仓库,对PB级数据进行存储.处理.分析.统计等业务:(如日志分析.数据挖掘) Hadoop工作模块 Common:提供框架和 ...
- XSS简单练习
xss平台: https://xss.haozi.me题解: https://blog.csdn.net/AlexYoung28/article/details/82315538 对在xss.haoz ...