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 ...
随机推荐
- python基础03day
# 1. # 创建字符串变量的三种写法及其区别 # 代码: #‘’.“”.“““””” # 区别: # 2. # 简述,计算机编程语言的分类及特点 # 1.机器 # 2.汇编 # 3.高级 # 3.1 ...
- 安卓、ios时间转换成时间戳的形式
将日期转换成时间戳的形式,在安卓和ios不同的系统下转正会有兼容性的问题 安卓系统下Date.parse(new Date('2018-03-30 12:00:00'))会直接转换成时间戳的形式(简单 ...
- jQuery常用方法(五)
一.jQuery中常用方法相关方法参数说明:a.无参,获取值b.参数param,设置值c.参数function(index,oldVal){}回调函数[返回我们所要使用的新值] 回调函数的两个参 ...
- Html中Css页面跳转问题
没有指定<a>的target属性值时,默认是"_blank,可以参考以下代码的设置来控制<a href="#" target="_blank& ...
- JavaScript设计模式与开发实践随笔(一)
编程语言按照数据类型大体可以分为两类,一类是静态类型语言,另一类是动态类型语言. 静态类型语言在编译时便已确定变量的类型,而动态类型语言的变量类型要到程序运行的时 候,待变量被赋予某个值之后,才会具有 ...
- 21、解决关于 vue项目中 点击按钮路由多了个问号
在vue项目开发过程中,点击按钮结果页面刷新了一遍 后来发现路径变成了 localhost:8080/?#/login 原因: 这里是 form 表单,点击了button 按钮,触发了他的默认事件,就 ...
- python高级编程之 web静态服务器
返回固定数据 import socket def request_handler(new_client_socket): """ 响应客户端请求的核心函数 "& ...
- rf中setup与teardown
setup:是测试一个用例(或者套件)前要做的事情 teardown:是测试后要做的事情 在RF中,每个测试套件目录.测试套件文件.测试用例 都可以有自己的setup 和teardown 所有的 se ...
- Django rest framework 之分页
Django rest_framework 中分页可分为三类: PageNumberPagination:看第 n 页,每页显示 n 条数据 LimitOffsetPagination:在 n 个位置 ...
- 《linux就该这么学》课堂笔记04 常用命令cat、mor...tar、find
本节命令汇总 命令 说明 格式 常用参数 实例 备注 cat 查看纯文本文件(内容较少) cat [选项] 文件名称 -n 显示行号 cat -n install-setup-ks.cfg 查看ins ...